r238238 - __declspec is not a core Clang language extension. Instead, require -fms-extensions or -fborland to enable the language extension.

Aaron Ballman aaron at aaronballman.com
Wed May 27 14:46:01 PDT 2015


I am not sufficiently well-versed with MinGW or Cygwin to say whether
this is good or bad, but it seems like a reasonable approach to me.

~Aaron

On Wed, May 27, 2015 at 5:33 PM, David Majnemer
<david.majnemer at gmail.com> wrote:
> I think the correct fix is to do the following:
>
> diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp
> index 33382ce..d89317f 100644
> --- a/lib/Basic/Targets.cpp
> +++ b/lib/Basic/Targets.cpp
> @@ -3595,11 +3595,8 @@ public:
>  };
>  } // end anonymous namespace
>
> -static void addMinGWDefines(const LangOptions &Opts, MacroBuilder &Builder)
> {
> -  Builder.defineMacro("__MSVCRT__");
> -  Builder.defineMacro("__MINGW32__");
> -
> -  // Mingw defines __declspec(a) to __attribute__((a)).  Clang supports
> +static void addCygMingDefines(const LangOptions &Opts, MacroBuilder
> &Builder) {
> +  // Mingw and cygwin define __declspec(a) to __attribute__((a)).  Clang
> supports
>    // __declspec natively under -fms-extensions, but we define a no-op
> __declspec
>    // macro anyway for pre-processor compatibility.
>    if (Opts.MicrosoftExt)
> @@ -3622,6 +3619,12 @@ static void addMinGWDefines(const LangOptions &Opts,
> MacroBuilder &Builder) {
>    }
>  }
>
> +static void addMinGWDefines(const LangOptions &Opts, MacroBuilder &Builder)
> {
> +  Builder.defineMacro("__MSVCRT__");
> +  Builder.defineMacro("__MINGW32__");
> +  addCygMingDefines(Opts, Builder);
> +}
> +
>  namespace {
>  // x86-32 MinGW target
>  class MinGWX86_32TargetInfo : public WindowsX86_32TargetInfo {
> @@ -3654,6 +3657,7 @@ public:
>      Builder.defineMacro("_X86_");
>      Builder.defineMacro("__CYGWIN__");
>      Builder.defineMacro("__CYGWIN32__");
> +    addCygMingDefines(Opts, Builder);
>      DefineStd(Builder, "unix", Opts);
>      if (Opts.CPlusPlus)
>        Builder.defineMacro("_GNU_SOURCE");
>
> This gives us the same behavior that clang's MingW mode gives and correctly
> mirrors what GCC wants to do.
>
>
> On Wed, May 27, 2015 at 2:30 PM, Aaron Ballman <aaron at aaronballman.com>
> wrote:
>>
>> This is why I was trying to get a bit more information on the target,
>> because the logs seem to imply that __declspec is getting used.
>>
>> /usr/include/cygwin/config.h:90:18: note: expanded from macro '__IMPORT'
>> #define __IMPORT __declspec(dllimport)
>>
>> However, this failure seems to be with the clang step of building, so
>> I'm wondering if the correct fix is to specify -fms-extensions to the
>> compilation flags or not.
>>
>> ~Aaron
>>
>> On Wed, May 27, 2015 at 5:27 PM, David Majnemer
>> <david.majnemer at gmail.com> wrote:
>> > Indeed it does:
>> >
>> > Cygwin/MinGW targets define 'TARGET_DLLIMPORT_DECL_ATTRIBUTES':
>> >
>> > https://github.com/gcc-mirror/gcc/blob/master/gcc/config/i386/cygming.h#l155
>> >
>> > Targets which define 'TARGET_DLLIMPORT_DECL_ATTRIBUTES' also define
>> > 'TARGET_DECLSPEC':
>> >
>> > https://github.com/gcc-mirror/gcc/blob/b67840ef878c3ea41839089195ff7175ef74e975/gcc/defaults.h#L792
>> >
>> > Targets which define 'TARGET_DECLSPEC' define '__declspec(x)' as
>> > '__attribute__((x))':
>> >
>> > https://github.com/gcc-mirror/gcc/blob/master/gcc/c-family/c-cppbuiltin.c#l1249
>> >
>> > On Wed, May 27, 2015 at 2:13 PM, Reid Kleckner <rnk at google.com> wrote:
>> >>
>> >> Doesn't cygwin do what mingw does, which is define __declspec to
>> >> __attribute__?
>> >>
>> >> On Wed, May 27, 2015 at 1:48 PM, Aaron Ballman <aaron at aaronballman.com>
>> >> wrote:
>> >>>
>> >>> On Wed, May 27, 2015 at 12:27 PM, Rafael EspĂ­ndola
>> >>> <rafael.espindola at gmail.com> wrote:
>> >>> > Maybe this broke cygwin:
>> >>> >
>> >>> >
>> >>> >
>> >>> > http://bb.pgr.jp/builders/clang-3stage-i686-cygwin/builds/1060/steps/make_quick/logs/stdio
>> >>>
>> >>> It did, and I am in contact with Takumi about the appropriate fix for
>> >>> it. We could revert until then if this is causing heartache.
>> >>>
>> >>> ~Aaron
>> >>>
>> >>> >
>> >>> > On 26 May 2015 at 15:44, Aaron Ballman <aaron at aaronballman.com>
>> >>> > wrote:
>> >>> >> Author: aaronballman
>> >>> >> Date: Tue May 26 14:44:52 2015
>> >>> >> New Revision: 238238
>> >>> >>
>> >>> >> URL: http://llvm.org/viewvc/llvm-project?rev=238238&view=rev
>> >>> >> Log:
>> >>> >> __declspec is not a core Clang language extension. Instead, require
>> >>> >> -fms-extensions or -fborland to enable the language extension.
>> >>> >>
>> >>> >> Note: __declspec is also temporarily enabled when compiling for a
>> >>> >> CUDA
>> >>> >> target because there are implementation details relying on
>> >>> >> __declspec(property) support currently. When those details change,
>> >>> >> __declspec should be disabled for CUDA targets.
>> >>> >>
>> >>> >> Modified:
>> >>> >>     cfe/trunk/docs/ReleaseNotes.rst
>> >>> >>     cfe/trunk/include/clang/Basic/TokenKinds.def
>> >>> >>     cfe/trunk/include/clang/Parse/Parser.h
>> >>> >>     cfe/trunk/lib/Basic/IdentifierTable.cpp
>> >>> >>     cfe/trunk/lib/Parse/ParseDecl.cpp
>> >>> >>     cfe/trunk/test/CodeGen/dllexport.c
>> >>> >>     cfe/trunk/test/CodeGen/dllimport.c
>> >>> >>     cfe/trunk/test/CodeGen/ms-volatile.c
>> >>> >>     cfe/trunk/test/CodeGen/windows-on-arm-dllimport-dllexport.c
>> >>> >>     cfe/trunk/test/CodeGen/windows-on-arm-stack-probe-size.c
>> >>> >>     cfe/trunk/test/CodeGenCXX/PR19955.cpp
>> >>> >>     cfe/trunk/test/CodeGenCXX/dllexport.cpp
>> >>> >>     cfe/trunk/test/CodeGenCXX/dllimport-rtti.cpp
>> >>> >>     cfe/trunk/test/CodeGenCXX/dllimport.cpp
>> >>> >>     cfe/trunk/test/CodeGenCXX/microsoft-abi-vftables.cpp
>> >>> >>     cfe/trunk/test/CodeGenCXX/pr20897.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-alias-avoidance-padding.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-aligned-tail-padding.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-basic-layout.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-empty-layout.c
>> >>> >>     cfe/trunk/test/Layout/ms-x86-empty-nonvirtual-bases.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-empty-virtual-base.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-lazy-empty-nonvirtual-base.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-pack-and-align.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-size-alignment-fail.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-vfvb-alignment.cpp
>> >>> >>     cfe/trunk/test/Layout/ms-x86-vfvb-sharing.cpp
>> >>> >>     cfe/trunk/test/Parser/cxx-ambig-init-templ.cpp
>> >>> >>     cfe/trunk/test/Rewriter/missing-dllimport.c
>> >>> >>     cfe/trunk/test/Sema/dllexport.c
>> >>> >>     cfe/trunk/test/Sema/dllimport.c
>> >>> >>     cfe/trunk/test/Sema/ms-inline-asm.c
>> >>> >>     cfe/trunk/test/Sema/pragma-ms_struct.c
>> >>> >>     cfe/trunk/test/SemaCXX/dllexport-pr22591.cpp
>> >>> >>     cfe/trunk/test/SemaCXX/dllexport.cpp
>> >>> >>     cfe/trunk/test/SemaCXX/dllimport.cpp
>> >>> >>     cfe/trunk/test/SemaCXX/generalized-deprecated.cpp
>> >>> >>
>> >>> >> Modified: cfe/trunk/docs/ReleaseNotes.rst
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/ReleaseNotes.rst?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/docs/ReleaseNotes.rst (original)
>> >>> >> +++ cfe/trunk/docs/ReleaseNotes.rst Tue May 26 14:44:52 2015
>> >>> >> @@ -47,7 +47,10 @@ sections with improvements to Clang's su
>> >>> >>  Major New Features
>> >>> >>  ------------------
>> >>> >>
>> >>> >> -- Feature ...
>> >>> >> +- Use of the ``__declspec`` language extension for declaration
>> >>> >> attributes now
>> >>> >> +requires passing the -fms-extensions or -fborland compiler flag.
>> >>> >> This
>> >>> >> language
>> >>> >> +extension is also enabled when compiling CUDA code, but its use
>> >>> >> should be
>> >>> >> +viewed as an implementation detail that is subject to change.
>> >>> >>
>> >>> >>
>> >>> >>  Improvements to Clang's diagnostics
>> >>> >>
>> >>> >> Modified: cfe/trunk/include/clang/Basic/TokenKinds.def
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/TokenKinds.def?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/include/clang/Basic/TokenKinds.def (original)
>> >>> >> +++ cfe/trunk/include/clang/Basic/TokenKinds.def Tue May 26
>> >>> >> 14:44:52
>> >>> >> 2015
>> >>> >> @@ -458,7 +458,7 @@ KEYWORD(__private_extern__          , KE
>> >>> >>  KEYWORD(__module_private__          , KEYALL)
>> >>> >>
>> >>> >>  // Microsoft Extension.
>> >>> >> -KEYWORD(__declspec                  , KEYALL)
>> >>> >> +KEYWORD(__declspec                  , KEYMS|KEYBORLAND)
>> >>> >>  KEYWORD(__cdecl                     , KEYALL)
>> >>> >>  KEYWORD(__stdcall                   , KEYALL)
>> >>> >>  KEYWORD(__fastcall                  , KEYALL)
>> >>> >>
>> >>> >> Modified: cfe/trunk/include/clang/Parse/Parser.h
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Parse/Parser.h?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/include/clang/Parse/Parser.h (original)
>> >>> >> +++ cfe/trunk/include/clang/Parse/Parser.h Tue May 26 14:44:52 2015
>> >>> >> @@ -2089,10 +2089,9 @@ private:
>> >>> >>                                  SourceLocation *endLoc = nullptr);
>> >>> >>    void MaybeParseMicrosoftDeclSpecs(ParsedAttributes &Attrs,
>> >>> >>                                      SourceLocation *End = nullptr)
>> >>> >> {
>> >>> >> -    // TODO: the __declspec keyword is parsed as a keyword for all
>> >>> >> languages,
>> >>> >> -    // but this is a Microsoft extension. Investigate whether this
>> >>> >> should be
>> >>> >> -    // protected by MicrosoftExt or not.
>> >>> >> -    if (Tok.is(tok::kw___declspec))
>> >>> >> +    const auto &LO = getLangOpts();
>> >>> >> +    if ((LO.MicrosoftExt || LO.Borland || LO.CUDA) &&
>> >>> >> +        Tok.is(tok::kw___declspec))
>> >>> >>        ParseMicrosoftDeclSpecs(Attrs, End);
>> >>> >>    }
>> >>> >>    void ParseMicrosoftDeclSpecs(ParsedAttributes &Attrs,
>> >>> >>
>> >>> >> Modified: cfe/trunk/lib/Basic/IdentifierTable.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/IdentifierTable.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/lib/Basic/IdentifierTable.cpp (original)
>> >>> >> +++ cfe/trunk/lib/Basic/IdentifierTable.cpp Tue May 26 14:44:52
>> >>> >> 2015
>> >>> >> @@ -215,6 +215,12 @@ void IdentifierTable::AddKeywords(const
>> >>> >>    if (LangOpts.ParseUnknownAnytype)
>> >>> >>      AddKeyword("__unknown_anytype", tok::kw___unknown_anytype,
>> >>> >> KEYALL,
>> >>> >>                 LangOpts, *this);
>> >>> >> +
>> >>> >> +  // FIXME: __declspec isn't really a CUDA extension, however it
>> >>> >> is
>> >>> >> required for
>> >>> >> +  // supporting cuda_builtin_vars.h, which uses
>> >>> >> __declspec(property).
>> >>> >> Once that
>> >>> >> +  // has been rewritten in terms of something more generic, remove
>> >>> >> this code.
>> >>> >> +  if (LangOpts.CUDA)
>> >>> >> +    AddKeyword("__declspec", tok::kw___declspec, KEYALL, LangOpts,
>> >>> >> *this);
>> >>> >>  }
>> >>> >>
>> >>> >>  /// \brief Checks if the specified token kind represents a keyword
>> >>> >> in
>> >>> >> the
>> >>> >>
>> >>> >> Modified: cfe/trunk/lib/Parse/ParseDecl.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Parse/ParseDecl.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/lib/Parse/ParseDecl.cpp (original)
>> >>> >> +++ cfe/trunk/lib/Parse/ParseDecl.cpp Tue May 26 14:44:52 2015
>> >>> >> @@ -531,6 +531,9 @@ bool Parser::ParseMicrosoftDeclSpecArgs(
>> >>> >>  ///             extended-decl-modifier extended-decl-modifier-seq
>> >>> >>  void Parser::ParseMicrosoftDeclSpecs(ParsedAttributes &Attrs,
>> >>> >>                                       SourceLocation *End) {
>> >>> >> +  assert((getLangOpts().MicrosoftExt || getLangOpts().Borland ||
>> >>> >> +          getLangOpts().CUDA) &&
>> >>> >> +         "Incorrect language options for parsing __declspec");
>> >>> >>    assert(Tok.is(tok::kw___declspec) && "Not a declspec!");
>> >>> >>
>> >>> >>    while (Tok.is(tok::kw___declspec)) {
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGen/dllexport.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/dllexport.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGen/dllexport.c (original)
>> >>> >> +++ cfe/trunk/test/CodeGen/dllexport.c Tue May 26 14:44:52 2015
>> >>> >> @@ -1,7 +1,7 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-msvc -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu    -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-gnu  -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-msvc -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu    -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-gnu  -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck %s
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGen/dllimport.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/dllimport.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGen/dllimport.c (original)
>> >>> >> +++ cfe/trunk/test/CodeGen/dllimport.c Tue May 26 14:44:52 2015
>> >>> >> @@ -1,9 +1,9 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck --check-prefix=CHECK --check-prefix=MS %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-msvc -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck --check-prefix=CHECK --check-prefix=MS %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu    -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck --check-prefix=CHECK --check-prefix=GNU %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-gnu  -emit-llvm -std=c11
>> >>> >> -O0 -o - %s | FileCheck --check-prefix=CHECK --check-prefix=GNU %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -emit-llvm -std=c11
>> >>> >> -O1 -o - %s | FileCheck --check-prefix=O1 --check-prefix=MO1 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu    -emit-llvm -std=c11
>> >>> >> -O1 -o - %s | FileCheck --check-prefix=O1 --check-prefix=GO1 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck --check-prefix=CHECK
>> >>> >> --check-prefix=MS %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-msvc -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck --check-prefix=CHECK
>> >>> >> --check-prefix=MS %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu    -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck --check-prefix=CHECK
>> >>> >> --check-prefix=GNU %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-gnu  -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O0 -o - %s | FileCheck --check-prefix=CHECK
>> >>> >> --check-prefix=GNU %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O1 -o - %s | FileCheck --check-prefix=O1
>> >>> >> --check-prefix=MO1 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu    -fms-extensions
>> >>> >> -emit-llvm -std=c11 -O1 -o - %s | FileCheck --check-prefix=O1
>> >>> >> --check-prefix=GO1 %s
>> >>> >>
>> >>> >>  #define JOIN2(x, y) x##y
>> >>> >>  #define JOIN(x, y) JOIN2(x, y)
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGen/ms-volatile.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/ms-volatile.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGen/ms-volatile.c (original)
>> >>> >> +++ cfe/trunk/test/CodeGen/ms-volatile.c Tue May 26 14:44:52 2015
>> >>> >> @@ -1,4 +1,4 @@
>> >>> >> -// RUN: %clang_cc1 -triple i386-pc-win32 -emit-llvm -fms-volatile
>> >>> >> -o
>> >>> >> - < %s | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -triple i386-pc-win32 -fms-extensions
>> >>> >> -emit-llvm
>> >>> >> -fms-volatile -o - < %s | FileCheck %s
>> >>> >>  struct foo {
>> >>> >>    volatile int x;
>> >>> >>  };
>> >>> >>
>> >>> >> Modified:
>> >>> >> cfe/trunk/test/CodeGen/windows-on-arm-dllimport-dllexport.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/windows-on-arm-dllimport-dllexport.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGen/windows-on-arm-dllimport-dllexport.c
>> >>> >> (original)
>> >>> >> +++ cfe/trunk/test/CodeGen/windows-on-arm-dllimport-dllexport.c Tue
>> >>> >> May 26 14:44:52 2015
>> >>> >> @@ -1,4 +1,4 @@
>> >>> >> -// RUN: %clang_cc1 -Werror -triple thumbv7-windows-itanium
>> >>> >> -mfloat-abi hard -emit-llvm %s -o - | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -Werror -triple thumbv7-windows-itanium
>> >>> >> -mfloat-abi hard -fms-extensions -emit-llvm %s -o - | FileCheck %s
>> >>> >>
>> >>> >>  __declspec(dllexport) int export_int;
>> >>> >>
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGen/windows-on-arm-stack-probe-size.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/windows-on-arm-stack-probe-size.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGen/windows-on-arm-stack-probe-size.c
>> >>> >> (original)
>> >>> >> +++ cfe/trunk/test/CodeGen/windows-on-arm-stack-probe-size.c Tue
>> >>> >> May
>> >>> >> 26 14:44:52 2015
>> >>> >> @@ -1,10 +1,10 @@
>> >>> >> -// RUN: %clang_cc1 -triple thumbv7-windows-itanium
>> >>> >> -mstack-probe-size=8096 -O2 -emit-llvm %s -o - \
>> >>> >> +// RUN: %clang_cc1 -triple thumbv7-windows-itanium
>> >>> >> -mstack-probe-size=8096 -fms-extensions -O2 -emit-llvm %s -o - \
>> >>> >>  // RUN:     | FileCheck %s -check-prefix CHECK-8096
>> >>> >>
>> >>> >> -// RUN: %clang_cc1 -triple thumbv7-windows-itanium
>> >>> >> -mstack-probe-size=4096 -O2 -emit-llvm %s -o - \
>> >>> >> +// RUN: %clang_cc1 -triple thumbv7-windows-itanium
>> >>> >> -mstack-probe-size=4096 -fms-extensions -O2 -emit-llvm %s -o - \
>> >>> >>  // RUN:     | FileCheck %s -check-prefix CHECK-4096
>> >>> >>
>> >>> >> -// RUN: %clang_cc1 -triple thumbv7-windows-itanium -O2 -emit-llvm
>> >>> >> %s
>> >>> >> -o - \
>> >>> >> +// RUN: %clang_cc1 -triple thumbv7-windows-itanium -fms-extensions
>> >>> >> -O2 -emit-llvm %s -o - \
>> >>> >>  // RUN:     | FileCheck %s -check-prefix CHECK
>> >>> >>
>> >>> >>  __declspec(dllimport) void initialise(signed char buffer[4096]);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGenCXX/PR19955.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/PR19955.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGenCXX/PR19955.cpp (original)
>> >>> >> +++ cfe/trunk/test/CodeGenCXX/PR19955.cpp Tue May 26 14:44:52 2015
>> >>> >> @@ -1,5 +1,5 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc -fno-rtti -emit-llvm
>> >>> >> -std=c++1y -O0 -o - %s | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-msvc -fno-rtti
>> >>> >> -emit-llvm
>> >>> >> -std=c++1y -O0 -o - %s | FileCheck %s --check-prefix X64
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc -fms-extensions
>> >>> >> -fno-rtti -emit-llvm -std=c++1y -O0 -o - %s | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-msvc -fms-extensions
>> >>> >> -fno-rtti -emit-llvm -std=c++1y -O0 -o - %s | FileCheck %s
>> >>> >> --check-prefix
>> >>> >> X64
>> >>> >>
>> >>> >>  extern int __declspec(dllimport) var;
>> >>> >>  extern void __declspec(dllimport) fun();
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGenCXX/dllexport.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/dllexport.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGenCXX/dllexport.cpp (original)
>> >>> >> +++ cfe/trunk/test/CodeGenCXX/dllexport.cpp Tue May 26 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,7 +1,7 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -O1 -mconstructor-aliases
>> >>> >> -disable-llvm-optzns -o -
>> >>> >> %s -w | FileCheck --check-prefix=MSC --check-prefix=M32 %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-msvc -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -O0 -o - %s -w | FileCheck
>> >>> >> --check-prefix=MSC
>> >>> >> --check-prefix=M64 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu    -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -O0 -o - %s -w | FileCheck
>> >>> >> --check-prefix=GNU
>> >>> >> --check-prefix=G32 %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-gnu  -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -O0 -o - %s -w | FileCheck
>> >>> >> --check-prefix=GNU
>> >>> >> --check-prefix=G64 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -fms-extensions -O1 -mconstructor-aliases
>> >>> >> -disable-llvm-optzns -o - %s -w | FileCheck --check-prefix=MSC
>> >>> >> --check-prefix=M32 %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-msvc -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -fms-extensions -O0 -o - %s -w | FileCheck
>> >>> >> --check-prefix=MSC --check-prefix=M64 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu    -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -fms-extensions -O0 -o - %s -w | FileCheck
>> >>> >> --check-prefix=GNU --check-prefix=G32 %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-gnu  -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -fno-threadsafe-statics -fms-extensions -O0 -o - %s -w | FileCheck
>> >>> >> --check-prefix=GNU --check-prefix=G64 %s
>> >>> >>
>> >>> >>  // Helper structs to make templates more expressive.
>> >>> >>  struct ImplicitInst_Exported {};
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGenCXX/dllimport-rtti.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/dllimport-rtti.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGenCXX/dllimport-rtti.cpp (original)
>> >>> >> +++ cfe/trunk/test/CodeGenCXX/dllimport-rtti.cpp Tue May 26
>> >>> >> 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,5 +1,5 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc -emit-llvm -std=c++1y
>> >>> >> -O1 -disable-llvm-optzns -o - %s | FileCheck %s --check-prefix=MSVC
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu  -emit-llvm -std=c++1y
>> >>> >> -O1 -disable-llvm-optzns -o - %s | FileCheck %s --check-prefix=GNU
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc -emit-llvm -std=c++1y
>> >>> >> -fms-extensions -O1 -disable-llvm-optzns -o - %s | FileCheck %s
>> >>> >> --check-prefix=MSVC
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu  -emit-llvm -std=c++1y
>> >>> >> -fms-extensions -O1 -disable-llvm-optzns -o - %s | FileCheck %s
>> >>> >> --check-prefix=GNU
>> >>> >>
>> >>> >>  struct __declspec(dllimport) S {
>> >>> >>    virtual void f() {}
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGenCXX/dllimport.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/dllimport.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGenCXX/dllimport.cpp (original)
>> >>> >> +++ cfe/trunk/test/CodeGenCXX/dllimport.cpp Tue May 26 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,14 +1,14 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -emit-llvm -std=c++1y -O0 -o - %s -DMSABI
>> >>> >> -w |
>> >>> >> FileCheck --check-prefix=MSC --check-prefix=M32 %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-msvc -fno-rtti
>> >>> >> -fno-threadsafe-statics -emit-llvm -std=c++1y -O0 -o - %s -DMSABI
>> >>> >> -w |
>> >>> >> FileCheck --check-prefix=MSC --check-prefix=M64 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu    -fno-rtti
>> >>> >> -fno-threadsafe-statics -emit-llvm -std=c++1y -O0 -o - %s
>> >>> >> -w |
>> >>> >> FileCheck --check-prefix=GNU --check-prefix=G32 %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-windows-gnu  -fno-rtti
>> >>> >> -fno-threadsafe-statics -emit-llvm -std=c++1y -O0 -o - %s
>> >>> >> -w |
>> >>> >> FileCheck --check-prefix=GNU --check-prefix=G64 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-compatibility-version=18.00 -emit-llvm
>> >>> >> -std=c++1y -O1 -o - %s -DMSABI -w | FileCheck --check-prefix=MO1
>> >>> >> --check-prefix=M18 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-compatibility-version=19.00 -emit-llvm
>> >>> >> -std=c++1y -O1 -o - %s -DMSABI -w | FileCheck --check-prefix=MO1
>> >>> >> --check-prefix=M19 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu    -fno-rtti
>> >>> >> -fno-threadsafe-statics -emit-llvm -std=c++1y -O1 -o - %s
>> >>> >> -w |
>> >>> >> FileCheck --check-prefix=GO1 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions -emit-llvm -std=c++1y -O0
>> >>> >> -o - %s
>> >>> >> -DMSABI -w | FileCheck --check-prefix=MSC --check-prefix=M32 %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-msvc -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions -emit-llvm -std=c++1y -O0
>> >>> >> -o - %s
>> >>> >> -DMSABI -w | FileCheck --check-prefix=MSC --check-prefix=M64 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu    -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions -emit-llvm -std=c++1y -O0
>> >>> >> -o - %s
>> >>> >> -w | FileCheck --check-prefix=GNU --check-prefix=G32 %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-windows-gnu  -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions -emit-llvm -std=c++1y -O0
>> >>> >> -o - %s
>> >>> >> -w | FileCheck --check-prefix=GNU --check-prefix=G64 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions
>> >>> >> -fms-compatibility-version=18.00
>> >>> >> -emit-llvm -std=c++1y -O1 -o - %s -DMSABI -w | FileCheck
>> >>> >> --check-prefix=MO1
>> >>> >> --check-prefix=M18 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions
>> >>> >> -fms-compatibility-version=19.00
>> >>> >> -emit-llvm -std=c++1y -O1 -o - %s -DMSABI -w | FileCheck
>> >>> >> --check-prefix=MO1
>> >>> >> --check-prefix=M19 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu    -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions -emit-llvm -std=c++1y -O1
>> >>> >> -o - %s
>> >>> >> -w | FileCheck --check-prefix=GO1 %s
>> >>> >>
>> >>> >>  // CHECK-NOT doesn't play nice with CHECK-DAG, so use separate run
>> >>> >> lines.
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -emit-llvm -std=c++1y -O0 -o - %s -DMSABI
>> >>> >> -w |
>> >>> >> FileCheck --check-prefix=MSC2 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu    -fno-rtti
>> >>> >> -fno-threadsafe-statics -emit-llvm -std=c++1y -O0 -o - %s
>> >>> >> -w |
>> >>> >> FileCheck --check-prefix=GNU2 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc   -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions -emit-llvm -std=c++1y -O0
>> >>> >> -o - %s
>> >>> >> -DMSABI -w | FileCheck --check-prefix=MSC2 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu    -fno-rtti
>> >>> >> -fno-threadsafe-statics -fms-extensions -emit-llvm -std=c++1y -O0
>> >>> >> -o - %s
>> >>> >> -w | FileCheck --check-prefix=GNU2 %s
>> >>> >>
>> >>> >>  // Helper structs to make templates more expressive.
>> >>> >>  struct ImplicitInst_Imported {};
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGenCXX/microsoft-abi-vftables.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/microsoft-abi-vftables.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGenCXX/microsoft-abi-vftables.cpp (original)
>> >>> >> +++ cfe/trunk/test/CodeGenCXX/microsoft-abi-vftables.cpp Tue May 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,5 +1,5 @@
>> >>> >> -// RUN: %clang_cc1 %s -fno-rtti -triple=i386-pc-win32 -emit-llvm
>> >>> >> -o -
>> >>> >> -O1 -disable-llvm-optzns | FileCheck %s -check-prefix=NO-RTTI
>> >>> >> -// RUN: %clang_cc1 %s -triple=i386-pc-win32 -emit-llvm -o - -O1
>> >>> >> -disable-llvm-optzns | FileCheck %s -check-prefix=RTTI
>> >>> >> +// RUN: %clang_cc1 %s -fno-rtti -triple=i386-pc-win32
>> >>> >> -fms-extensions
>> >>> >> -emit-llvm -o - -O1 -disable-llvm-optzns | FileCheck %s
>> >>> >> -check-prefix=NO-RTTI
>> >>> >> +// RUN: %clang_cc1 %s -triple=i386-pc-win32 -fms-extensions
>> >>> >> -emit-llvm -o - -O1 -disable-llvm-optzns | FileCheck %s
>> >>> >> -check-prefix=RTTI
>> >>> >>
>> >>> >>  // RTTI-DAG: $"\01??_7S@@6B@" = comdat largest
>> >>> >>  // RTTI-DAG: $"\01??_7V@@6B@" = comdat largest
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/CodeGenCXX/pr20897.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/pr20897.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/CodeGenCXX/pr20897.cpp (original)
>> >>> >> +++ cfe/trunk/test/CodeGenCXX/pr20897.cpp Tue May 26 14:44:52 2015
>> >>> >> @@ -1,4 +1,4 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc   -emit-llvm
>> >>> >> -std=c++1y
>> >>> >> -O0 -o - %s | FileCheck %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc -fms-extensions
>> >>> >> -emit-llvm -std=c++1y -O0 -o - %s | FileCheck %s
>> >>> >>  struct Base {};
>> >>> >>
>> >>> >>  // __declspec(dllexport) causes us to export the implicit
>> >>> >> constructor.
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-alias-avoidance-padding.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-alias-avoidance-padding.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-alias-avoidance-padding.cpp
>> >>> >> (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-alias-avoidance-padding.cpp Tue
>> >>> >> May
>> >>> >> 26 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-aligned-tail-padding.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-aligned-tail-padding.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-aligned-tail-padding.cpp
>> >>> >> (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-aligned-tail-padding.cpp Tue May
>> >>> >> 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-basic-layout.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-basic-layout.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-basic-layout.cpp (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-basic-layout.cpp Tue May 26
>> >>> >> 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-empty-layout.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-empty-layout.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-empty-layout.c (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-empty-layout.c Tue May 26 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >>
>> >>> >>  struct EmptyIntMemb {
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-empty-nonvirtual-bases.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-empty-nonvirtual-bases.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-empty-nonvirtual-bases.cpp
>> >>> >> (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-empty-nonvirtual-bases.cpp Tue May
>> >>> >> 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-empty-virtual-base.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-empty-virtual-base.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-empty-virtual-base.cpp (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-empty-virtual-base.cpp Tue May 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified:
>> >>> >> cfe/trunk/test/Layout/ms-x86-lazy-empty-nonvirtual-base.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-lazy-empty-nonvirtual-base.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-lazy-empty-nonvirtual-base.cpp
>> >>> >> (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-lazy-empty-nonvirtual-base.cpp Tue
>> >>> >> May 26 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-pack-and-align.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-pack-and-align.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-pack-and-align.cpp (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-pack-and-align.cpp Tue May 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only -Wno-inaccessible-base %s 2>&1
>> >>> >> \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only
>> >>> >> -Wno-inaccessible-base
>> >>> >> %s 2>&1 \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only -Wno-inaccessible-base %s
>> >>> >> 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only
>> >>> >> -Wno-inaccessible-base
>> >>> >> %s 2>/dev/null \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-size-alignment-fail.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-size-alignment-fail.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-size-alignment-fail.cpp (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-size-alignment-fail.cpp Tue May 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts %s 2>/dev/null \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts %s 2>/dev/null \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-vfvb-alignment.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-vfvb-alignment.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-vfvb-alignment.cpp (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-vfvb-alignment.cpp Tue May 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>&1 \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>&1 \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Layout/ms-x86-vfvb-sharing.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Layout/ms-x86-vfvb-sharing.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Layout/ms-x86-vfvb-sharing.cpp (original)
>> >>> >> +++ cfe/trunk/test/Layout/ms-x86-vfvb-sharing.cpp Tue May 26
>> >>> >> 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,6 +1,6 @@
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>&1 \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple i686-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>&1 \
>> >>> >>  // RUN:            | FileCheck %s
>> >>> >> -// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fdump-record-layouts -fsyntax-only %s 2>/dev/null \
>> >>> >> +// RUN: %clang_cc1 -fno-rtti -emit-llvm-only -triple
>> >>> >> x86_64-pc-win32
>> >>> >> -fms-extensions -fdump-record-layouts -fsyntax-only %s 2>/dev/null
>> >>> >> \
>> >>> >>  // RUN:            | FileCheck %s -check-prefix CHECK-X64
>> >>> >>
>> >>> >>  extern "C" int printf(const char *fmt, ...);
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Parser/cxx-ambig-init-templ.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Parser/cxx-ambig-init-templ.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Parser/cxx-ambig-init-templ.cpp (original)
>> >>> >> +++ cfe/trunk/test/Parser/cxx-ambig-init-templ.cpp Tue May 26
>> >>> >> 14:44:52
>> >>> >> 2015
>> >>> >> @@ -160,7 +160,6 @@ namespace Operators {
>> >>> >>  namespace ElaboratedTypeSpecifiers {
>> >>> >>    struct S {
>> >>> >>      int f(int x = T<a, struct S>());
>> >>> >> -    int g(int x = T<a, class __declspec() C>());
>> >>> >>      int h(int x = T<a, union __attribute__(()) U>());
>> >>> >>      int i(int x = T<a, enum E>());
>> >>> >>      int j(int x = T<a, struct S::template T<0, enum E>>());
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Rewriter/missing-dllimport.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Rewriter/missing-dllimport.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Rewriter/missing-dllimport.c (original)
>> >>> >> +++ cfe/trunk/test/Rewriter/missing-dllimport.c Tue May 26 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,4 +1,4 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-pc-win32 -verify %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-pc-win32 -fms-extensions -verify
>> >>> >> %s
>> >>> >>
>> >>> >>  // Do not report that 'foo()' is redeclared without dllimport
>> >>> >> attribute.
>> >>> >>  // specified.  Addresses <rdar://problem/7653912>.
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Sema/dllexport.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/dllexport.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Sema/dllexport.c (original)
>> >>> >> +++ cfe/trunk/test/Sema/dllexport.c Tue May 26 14:44:52 2015
>> >>> >> @@ -1,7 +1,7 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only -verify
>> >>> >> -std=c99 %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only -verify
>> >>> >> -std=c11 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only -verify
>> >>> >> -std=c11 %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only -verify
>> >>> >> -std=c99 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c99 %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c11 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c11 %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c99 %s
>> >>> >>
>> >>> >>  // Invalid usage.
>> >>> >>  __declspec(dllexport) typedef int typedef1; //
>> >>> >> expected-warning{{'dllexport' attribute only applies to variables
>> >>> >> and
>> >>> >> functions}}
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Sema/dllimport.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/dllimport.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Sema/dllimport.c (original)
>> >>> >> +++ cfe/trunk/test/Sema/dllimport.c Tue May 26 14:44:52 2015
>> >>> >> @@ -1,7 +1,7 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only -verify
>> >>> >> -std=c99 -DMS %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only -verify
>> >>> >> -std=c11 -DMS %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only -verify
>> >>> >> -std=c11 -DGNU %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only -verify
>> >>> >> -std=c99 -DGNU %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c99 -DMS %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c11 -DMS %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c11 -DGNU %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c99 -DGNU %s
>> >>> >>
>> >>> >>  // Invalid usage.
>> >>> >>  __declspec(dllimport) typedef int typedef1; //
>> >>> >> expected-warning{{'dllimport' attribute only applies to variables
>> >>> >> and
>> >>> >> functions}}
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Sema/ms-inline-asm.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/ms-inline-asm.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Sema/ms-inline-asm.c (original)
>> >>> >> +++ cfe/trunk/test/Sema/ms-inline-asm.c Tue May 26 14:44:52 2015
>> >>> >> @@ -1,5 +1,5 @@
>> >>> >>  // REQUIRES: x86-registered-target
>> >>> >> -// RUN: %clang_cc1 %s -triple x86_64-apple-darwin10 -fasm-blocks
>> >>> >> -Wno-microsoft -Wunused-label -verify -fsyntax-only
>> >>> >> +// RUN: %clang_cc1 %s -triple x86_64-apple-darwin10
>> >>> >> -fms-extensions
>> >>> >> -fasm-blocks -Wno-microsoft -Wunused-label -verify -fsyntax-only
>> >>> >>
>> >>> >>  void t1(void) {
>> >>> >>   __asm __asm // expected-error {{__asm used with no assembly
>> >>> >> instructions}}
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/Sema/pragma-ms_struct.c
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/pragma-ms_struct.c?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/Sema/pragma-ms_struct.c (original)
>> >>> >> +++ cfe/trunk/test/Sema/pragma-ms_struct.c Tue May 26 14:44:52 2015
>> >>> >> @@ -1,4 +1,4 @@
>> >>> >> -// RUN: %clang_cc1 -fsyntax-only -verify -triple
>> >>> >> x86_64-apple-darwin9
>> >>> >> %s
>> >>> >> +// RUN: %clang_cc1 -fsyntax-only -fms-extensions -verify -triple
>> >>> >> x86_64-apple-darwin9 %s
>> >>> >>
>> >>> >>  #pragma ms_struct on
>> >>> >>
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/SemaCXX/dllexport-pr22591.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/dllexport-pr22591.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/SemaCXX/dllexport-pr22591.cpp (original)
>> >>> >> +++ cfe/trunk/test/SemaCXX/dllexport-pr22591.cpp Tue May 26
>> >>> >> 14:44:52
>> >>> >> 2015
>> >>> >> @@ -1,7 +1,7 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu  -verify -std=c++03 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-gnu  -verify -std=c++11 %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc -verify -std=c++03
>> >>> >> -DERROR %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-windows-msvc -verify -std=c++11 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu  -fms-extensions
>> >>> >> -verify
>> >>> >> -std=c++03 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-gnu  -fms-extensions
>> >>> >> -verify
>> >>> >> -std=c++11 %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc -fms-extensions
>> >>> >> -verify
>> >>> >> -std=c++03 -DERROR %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-windows-msvc -fms-extensions
>> >>> >> -verify
>> >>> >> -std=c++11 %s
>> >>> >>
>> >>> >>  #ifndef ERROR
>> >>> >>  // expected-no-diagnostics
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/SemaCXX/dllexport.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/dllexport.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/SemaCXX/dllexport.cpp (original)
>> >>> >> +++ cfe/trunk/test/SemaCXX/dllexport.cpp Tue May 26 14:44:52 2015
>> >>> >> @@ -1,7 +1,7 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only -verify
>> >>> >> -std=c++11 -Wunsupported-dll-base-class-template -DMS %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only -verify
>> >>> >> -std=c++1y -Wunsupported-dll-base-class-template -DMS %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only -verify
>> >>> >> -std=c++1y -Wunsupported-dll-base-class-template %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only -verify
>> >>> >> -std=c++11 -Wunsupported-dll-base-class-template %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++11
>> >>> >> -Wunsupported-dll-base-class-template
>> >>> >> -DMS %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++1y
>> >>> >> -Wunsupported-dll-base-class-template
>> >>> >> -DMS %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++1y
>> >>> >> -Wunsupported-dll-base-class-template %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++11
>> >>> >> -Wunsupported-dll-base-class-template %s
>> >>> >>
>> >>> >>  // Helper structs to make templates more expressive.
>> >>> >>  struct ImplicitInst_Exported {};
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/SemaCXX/dllimport.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/dllimport.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/SemaCXX/dllimport.cpp (original)
>> >>> >> +++ cfe/trunk/test/SemaCXX/dllimport.cpp Tue May 26 14:44:52 2015
>> >>> >> @@ -1,7 +1,7 @@
>> >>> >> -// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only -verify
>> >>> >> -std=c++11 -Wunsupported-dll-base-class-template -DMS %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only -verify
>> >>> >> -std=c++1y -Wunsupported-dll-base-class-template -DMS %s
>> >>> >> -// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only -verify
>> >>> >> -std=c++1y -Wunsupported-dll-base-class-template -DGNU %s
>> >>> >> -// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only -verify
>> >>> >> -std=c++11 -Wunsupported-dll-base-class-template -DGNU %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-win32     -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++11
>> >>> >> -Wunsupported-dll-base-class-template
>> >>> >> -DMS %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-win32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++1y
>> >>> >> -Wunsupported-dll-base-class-template
>> >>> >> -DMS %s
>> >>> >> +// RUN: %clang_cc1 -triple i686-mingw32   -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++1y
>> >>> >> -Wunsupported-dll-base-class-template
>> >>> >> -DGNU %s
>> >>> >> +// RUN: %clang_cc1 -triple x86_64-mingw32 -fsyntax-only
>> >>> >> -fms-extensions -verify -std=c++11
>> >>> >> -Wunsupported-dll-base-class-template
>> >>> >> -DGNU %s
>> >>> >>
>> >>> >>  // Helper structs to make templates more expressive.
>> >>> >>  struct ImplicitInst_Imported {};
>> >>> >>
>> >>> >> Modified: cfe/trunk/test/SemaCXX/generalized-deprecated.cpp
>> >>> >> URL:
>> >>> >>
>> >>> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/generalized-deprecated.cpp?rev=238238&r1=238237&r2=238238&view=diff
>> >>> >>
>> >>> >>
>> >>> >> ==============================================================================
>> >>> >> --- cfe/trunk/test/SemaCXX/generalized-deprecated.cpp (original)
>> >>> >> +++ cfe/trunk/test/SemaCXX/generalized-deprecated.cpp Tue May 26
>> >>> >> 14:44:52 2015
>> >>> >> @@ -1,4 +1,4 @@
>> >>> >> -// RUN: %clang_cc1 -std=c++11 -verify -fsyntax-only
>> >>> >> -Wno-deprecated
>> >>> >> %s
>> >>> >> +// RUN: %clang_cc1 -std=c++11 -verify -fsyntax-only
>> >>> >> -fms-extensions
>> >>> >> -Wno-deprecated %s
>> >>> >>
>> >>> >>  // NOTE: use -Wno-deprecated to avoid cluttering the output with
>> >>> >> deprecated
>> >>> >>  // warnings
>> >>> >>
>> >>> >>
>> >>> >> _______________________________________________
>> >>> >> cfe-commits mailing list
>> >>> >> cfe-commits at cs.uiuc.edu
>> >>> >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>> >>>
>> >>> _______________________________________________
>> >>> cfe-commits mailing list
>> >>> cfe-commits at cs.uiuc.edu
>> >>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>> >>
>> >>
>> >>
>> >> _______________________________________________
>> >> cfe-commits mailing list
>> >> cfe-commits at cs.uiuc.edu
>> >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>> >>
>> >
>
>




More information about the cfe-commits mailing list