r243098 - Add extensive tests for the mingw toolchain and remove trailing slash from Arch.

Yaron Keren yaron.keren at gmail.com
Fri Jul 24 12:50:07 PDT 2015


r243144.


2015-07-24 22:09 GMT+03:00 Yaron Keren <yaron.keren at gmail.com>:

> Initially sys_root path was #ifdef for non-Windows only but then the test
> for the sys_root path fails on Windows since the path is missing. We could
> make a specific non-Windows test just for sysroot but then this would not
> be tested on Windows and the test coverage is lacking. I prefer the Windows
> test to test as much as possible.
>
> OTOH, adding the sys_root path on Windows is practically meaningless as it
> will not be found on the system and filtered out by HeaderSearch, as are
> several more unexisting paths. Every one of the six Linux distributions had
> a *unique* collection of include paths, especially C++ ones, as documented
> in the source code and tested.
> clang does not know which Linux (or which Windows toolchain) it's running
> on, the mingw driver has to add all likely paths which are filtered later.
>
> So as the sys_root path is really intended to work (as opposed to be
> tested) on Linux only I kept the unix slashes.
>
> Your second comment is correct: the include path should be based on
> sysroot and arch like the first one.
> I will fix that.
>
>
> 2015-07-24 21:40 GMT+03:00 Richard Smith <richard at metafoo.co.uk>:
>
>> On Fri, Jul 24, 2015 at 1:50 AM, Yaron Keren <yaron.keren at gmail.com>
>> wrote:
>>
>>> Author: yrnkrn
>>> Date: Fri Jul 24 03:50:15 2015
>>> New Revision: 243098
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=243098&view=rev
>>>
>>> Log:
>>> Add extensive tests for the mingw toolchain and remove trailing slash
>>> from Arch.
>>>
>>> Address Richard Smith comments: remove the trailing seperator from the
>>> Arch
>>> variable, implement six mingw_* trees under tools/clangtest/Driver/Inputs
>>> and merge linux and Windows tests into a universal test that uses these
>>> trees.
>>>
>>>
>>> Added:
>>>     cfe/trunk/test/Driver/Inputs/mingw_arch_tree/
>>>     cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/
>>>     cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/5.1.0/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/5.1.0/backward/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/5.1.0/backward/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/5.1.0/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/5.1.0/i686-w64-mingw32/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/
>>>     cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include-fixed/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include-fixed/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c++/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c++/backward/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c++/backward/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c++/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c++/i686-w64-mingw32/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include-fixed/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include-fixed/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/include/
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/include/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include-fixed/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include-fixed/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c++/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c++/backward/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c++/backward/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c++/mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c++/mingw32/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/minw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/minw32/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/minw32/include/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/
>>>     cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/
>>>     cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/i686-w64-mingw32/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/i686-w64-mingw32/include/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/4.9.2/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/4.9.2/backward/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/4.9.2/backward/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/4.9.2/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/4.9.2/i686-w64-mingw32/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/
>>>     cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include-fixed/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include-fixed/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/
>>>     cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/
>>>     cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/
>>>     cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include-fixed/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include-fixed/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c++/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c++/backward/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c++/backward/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c++/x86_64-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c++/x86_64-w64-mingw32/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/x86_64-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/x86_64-w64-mingw32/sys-root/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/x86_64-w64-mingw32/sys-root/mingw/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/x86_64-w64-mingw32/sys-root/mingw/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/x86_64-w64-mingw32/sys-root/mingw/include/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/
>>>     cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/
>>>     cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/
>>>     cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/
>>>     cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/4.8/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/4.8/86_64-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/4.8/86_64-w64-mingw32/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/4.8/backward/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/4.8/backward/.keep
>>>     cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/
>>>     cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include-fixed/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include-fixed/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include/.keep
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/x86_64-w64-mingw32/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/x86_64-w64-mingw32/include/
>>>
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/x86_64-w64-mingw32/include/.keep
>>>     cfe/trunk/test/Driver/mingw.cpp
>>> Removed:
>>>     cfe/trunk/test/Driver/mingw-linux.cpp
>>>     cfe/trunk/test/Driver/mingw-win.cpp
>>> Modified:
>>>     cfe/trunk/lib/Driver/MinGWToolChain.cpp
>>>
>>> Modified: cfe/trunk/lib/Driver/MinGWToolChain.cpp
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/MinGWToolChain.cpp?rev=243098&r1=243097&r2=243098&view=diff
>>>
>>>
>>> ==============================================================================
>>> --- cfe/trunk/lib/Driver/MinGWToolChain.cpp (original)
>>> +++ cfe/trunk/lib/Driver/MinGWToolChain.cpp Fri Jul 24 03:50:15 2015
>>> @@ -40,7 +40,7 @@ void MinGW::findGccLibDir() {
>>>      if (!EC) {
>>>        GccLibDir = MingwOrgEntry->path();
>>>        // Replace Arch with mingw32 arch.
>>> -      Arch = "mingw32//";
>>> +      Arch = "mingw32";
>>>        break;
>>>      }
>>>    }
>>> @@ -51,8 +51,7 @@ MinGW::MinGW(const Driver &D, const llvm
>>>    getProgramPaths().push_back(getDriver().getInstalledDir());
>>>
>>>    // Default Arch is mingw-w64.
>>> -  Arch = (getTriple().getArchName() + "-w64-mingw32" +
>>> -          llvm::sys::path::get_separator()).str();
>>> +  Arch = (getTriple().getArchName() + "-w64-mingw32").str();
>>>
>>>  // In Windows there aren't any standard install locations, we search
>>>  // for gcc on the PATH. In Linux the base is always /usr.
>>> @@ -66,25 +65,23 @@ MinGW::MinGW(const Driver &D, const llvm
>>>    else
>>>      Base = llvm::sys::path::parent_path(getDriver().getInstalledDir());
>>>  #else
>>> -  Base = "/usr";
>>> +  if (getDriver().SysRoot.size())
>>> +    Base = getDriver().SysRoot;
>>> +  else
>>> +    Base = "/usr";
>>>  #endif
>>>
>>>    Base += llvm::sys::path::get_separator();
>>> -  if (getDriver().SysRoot.size())
>>> -    GccLibDir = getDriver().SysRoot;
>>> -  else
>>> -    findGccLibDir();
>>> +  findGccLibDir();
>>>    Ver = llvm::sys::path::filename(GccLibDir);
>>>    // GccLibDir must precede Base/lib so that the
>>>    // correct crtbegin.o ,cetend.o would be found.
>>>    getFilePaths().push_back(GccLibDir);
>>> -  getFilePaths().push_back(Base + Arch + "lib");
>>> -#ifdef LLVM_ON_WIN32
>>> +  getFilePaths().push_back(
>>> +      (Base + Arch + llvm::sys::path::get_separator() + "lib").str());
>>>    getFilePaths().push_back(Base + "lib");
>>> -#else
>>>    // openSUSE
>>> -  getFilePaths().push_back(Base + Arch + "sys-root/mingw/lib");
>>> -#endif
>>> +  getFilePaths().push_back(Base + Arch + "/sys-root/mingw/lib");
>>>
>>
>> You now appear to be unconditionally adding this path with Unix directory
>> separators, even when on Windows. That doesn't look right to me; is that
>> what you meant?
>>
>>  }
>>>
>>>  bool MinGW::IsIntegratedAssemblerDefault() const { return true; }
>>> @@ -129,29 +126,29 @@ bool MinGW::UseSEHExceptions() const {
>>>  // Include directories for various hosts:
>>>
>>>  // Windows, mingw.org
>>>
>>> -// c:\mingw\lib\gcc\mingw32\4.8.1\include\c++
>>> -// c:\mingw\lib\gcc\mingw32\4.8.1\include\c++\mingw32
>>> -// c:\mingw\lib\gcc\mingw32\4.8.1\include\c++\backward
>>> -// c:\mingw\lib\gcc\mingw32\4.8.1\include
>>> -// c:\mingw\include
>>> -// c:\mingw\lib\gcc\mingw32\4.8.1\include-fixed
>>> +// c:\mingw\lib\gcc\mingw32\4.8.1\include\c++
>>> +// c:\mingw\lib\gcc\mingw32\4.8.1\include\c++\mingw32
>>> +// c:\mingw\lib\gcc\mingw32\4.8.1\include\c++\backward
>>> +// c:\mingw\lib\gcc\mingw32\4.8.1\include
>>> +// c:\mingw\include
>>> +// c:\mingw\lib\gcc\mingw32\4.8.1\include-fixed
>>>  // c:\mingw\mingw32\include
>>>
>>>  // Windows, mingw-w64 mingw-builds
>>> -// c:\mingw32\lib\gcc\i686-w64-mingw32\4.9.1\include
>>> -// c:\mingw32\lib\gcc\i686-w64-mingw32\4.9.1\include-fixed
>>> -// c:\mingw32\i686-w64-mingw32\include
>>> -// c:\mingw32\i686-w64-mingw32\include\c++
>>> -// c:\mingw32\i686-w64-mingw32\include\c++\i686-w64-mingw32
>>> -// c:\mingw32\i686-w64-mingw32\include\c++\backward
>>> +// c:\mingw32\lib\gcc\i686-w64-mingw32\4.9.1\include
>>> +// c:\mingw32\lib\gcc\i686-w64-mingw32\4.9.1\include-fixed
>>> +// c:\mingw32\i686-w64-mingw32\include
>>> +// c:\mingw32\i686-w64-mingw32\include\c++
>>> +// c:\mingw32\i686-w64-mingw32\include\c++\i686-w64-mingw32
>>> +// c:\mingw32\i686-w64-mingw32\include\c++\backward
>>>
>>>  // Windows, mingw-w64 msys2
>>> -// c:\msys64\mingw32\lib\gcc\i686-w64-mingw32\4.9.2\include
>>> -// c:\msys64\mingw32\include
>>> -// c:\msys64\mingw32\lib\gcc\i686-w64-mingw32\4.9.2\include-fixed
>>> -// c:\msys64\mingw32\i686-w64-mingw32\include
>>> -// c:\msys64\mingw32\include\c++\4.9.2
>>> -// c:\msys64\mingw32\include\c++\4.9.2\i686-w64-mingw32
>>> +// c:\msys64\mingw32\lib\gcc\i686-w64-mingw32\4.9.2\include
>>> +// c:\msys64\mingw32\include
>>> +// c:\msys64\mingw32\lib\gcc\i686-w64-mingw32\4.9.2\include-fixed
>>> +// c:\msys64\mingw32\i686-w64-mingw32\include
>>> +// c:\msys64\mingw32\include\c++\4.9.2
>>> +// c:\msys64\mingw32\include\c++\4.9.2\i686-w64-mingw32
>>>  // c:\msys64\mingw32\include\c++\4.9.2\backward
>>>
>>>  // openSUSE
>>> @@ -163,20 +160,20 @@ bool MinGW::UseSEHExceptions() const {
>>>  // /usr/x86_64-w64-mingw32/sys-root/mingw/include
>>>
>>>  // Arch Linux
>>> -// /usr/i686-w64-mingw32/include/c++/5.1.0
>>> -// /usr/i686-w64-mingw32/include/c++/5.1.0/i686-w64-mingw32
>>> -// /usr/i686-w64-mingw32/include/c++/5.1.0/backward
>>> -// /usr/lib/gcc/i686-w64-mingw32/5.1.0/include
>>> -// /usr/lib/gcc/i686-w64-mingw32/5.1.0/include-fixed
>>> +// /usr/i686-w64-mingw32/include/c++/5.1.0
>>> +// /usr/i686-w64-mingw32/include/c++/5.1.0/i686-w64-mingw32
>>> +// /usr/i686-w64-mingw32/include/c++/5.1.0/backward
>>> +// /usr/lib/gcc/i686-w64-mingw32/5.1.0/include
>>> +// /usr/lib/gcc/i686-w64-mingw32/5.1.0/include-fixed
>>>  // /usr/i686-w64-mingw32/include
>>>
>>>  // Ubuntu
>>> -// /usr/include/c++/4.8
>>> -// /usr/include/c++/4.8/x86_64-w64-mingw32
>>> -// /usr/include/c++/4.8/backward
>>> -// /usr/lib/gcc/x86_64-w64-mingw32/4.8/include
>>> -// /usr/lib/gcc/x86_64-w64-mingw32/4.8/include-fixed
>>> -// /usr/x86_64-w64-mingw32/include
>>> +// /usr/include/c++/4.8
>>> +// /usr/include/c++/4.8/x86_64-w64-mingw32
>>> +// /usr/include/c++/4.8/backward
>>> +// /usr/lib/gcc/x86_64-w64-mingw32/4.8/include
>>> +// /usr/lib/gcc/x86_64-w64-mingw32/4.8/include-fixed
>>> +// /usr/x86_64-w64-mingw32/include
>>>
>>>  void MinGW::AddClangSystemIncludeArgs(const ArgList &DriverArgs,
>>>                                        ArgStringList &CC1Args) const {
>>> @@ -197,14 +194,13 @@ void MinGW::AddClangSystemIncludeArgs(co
>>>      llvm::sys::path::append(IncludeDir, "include");
>>>      addSystemInclude(DriverArgs, CC1Args, IncludeDir.c_str());
>>>      IncludeDir += "-fixed";
>>> -#ifdef LLVM_ON_UNIX
>>>      // openSUSE
>>>      addSystemInclude(DriverArgs, CC1Args,
>>>                       "/usr/x86_64-w64-mingw32/sys-root/mingw/include");
>>>
>>
>> Likewise here. Plus, shouldn't this path be affected by the sysroot, and
>> by the architecture?
>>
>>
>>> -#endif
>>>      addSystemInclude(DriverArgs, CC1Args, IncludeDir.c_str());
>>>    }
>>> -  addSystemInclude(DriverArgs, CC1Args, Base + Arch + "include");
>>> +  addSystemInclude(DriverArgs, CC1Args,
>>> +                   Base + Arch + llvm::sys::path::get_separator() +
>>> "include");
>>>    addSystemInclude(DriverArgs, CC1Args, Base + "include");
>>>  }
>>>
>>> @@ -216,9 +212,9 @@ void MinGW::AddClangCXXStdlibIncludeArgs
>>>
>>>    switch (GetCXXStdlibType(DriverArgs)) {
>>>    case ToolChain::CST_Libcxx:
>>> -    addSystemInclude(DriverArgs, CC1Args, Base        + "include" +
>>> -                     llvm::sys::path::get_separator() + "c++"     +
>>> -                     llvm::sys::path::get_separator() + "v1");
>>> +    addSystemInclude(DriverArgs, CC1Args,
>>> +                     Base + "include" +
>>> llvm::sys::path::get_separator() +
>>> +                         "c++" + llvm::sys::path::get_separator() +
>>> "v1");
>>>      break;
>>>
>>>    case ToolChain::CST_Libstdcxx:
>>> @@ -232,8 +228,8 @@ void MinGW::AddClangCXXStdlibIncludeArgs
>>>      CppIncludeBases.emplace_back(GccLibDir);
>>>      llvm::sys::path::append(CppIncludeBases[3], "include", "c++");
>>>      for (auto &CppIncludeBase : CppIncludeBases) {
>>> -      CppIncludeBase += llvm::sys::path::get_separator();
>>>        addSystemInclude(DriverArgs, CC1Args, CppIncludeBase);
>>> +      CppIncludeBase += llvm::sys::path::get_separator();
>>>        addSystemInclude(DriverArgs, CC1Args, CppIncludeBase + Arch);
>>>        addSystemInclude(DriverArgs, CC1Args, CppIncludeBase +
>>> "backward");
>>>      }
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/5.1.0/backward/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c%2B%2B/5.1.0/backward/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c++/5.1.0/i686-w64-mingw32/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/i686-w64-mingw32/include/c%2B%2B/5.1.0/i686-w64-mingw32/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include-fixed/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include-fixed/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_arch_tree/usr/lib/gcc/i686-w64-mingw32/5.1.0/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c++/backward/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c%2B%2B/backward/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c++/i686-w64-mingw32/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/i686-w64-mingw32/include/c%2B%2B/i686-w64-mingw32/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include-fixed/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include-fixed/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_builds_tree/mingw32/lib/gcc/i686-w64-mingw32/4.9.1/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include-fixed/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include-fixed/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c++/backward/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c%2B%2B/backward/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c++/mingw32/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/lib/gcc/mingw32/4.8.1/include/c%2B%2B/mingw32/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/minw32/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_mingw_org_tree/mingw/minw32/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/i686-w64-mingw32/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/i686-w64-mingw32/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/4.9.2/backward/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c%2B%2B/4.9.2/backward/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c++/4.9.2/i686-w64-mingw32/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/include/c%2B%2B/4.9.2/i686-w64-mingw32/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include-fixed/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include-fixed/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_msys2_tree/msys64/mingw32/lib/gcc/i686-w64-mingw32/4.9.2/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include-fixed/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include-fixed/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c++/backward/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c%2B%2B/backward/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c++/x86_64-w64-mingw32/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/lib64/gcc/x86_64-w64-mingw32/5.1.0/include/c%2B%2B/x86_64-w64-mingw32/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/x86_64-w64-mingw32/sys-root/mingw/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_opensuse_tree/usr/x86_64-w64-mingw32/sys-root/mingw/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/4.8/86_64-w64-mingw32/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c%2B%2B/4.8/86_64-w64-mingw32/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c++/4.8/backward/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/include/c%2B%2B/4.8/backward/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include-fixed/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include-fixed/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/lib/gcc/x86_64-w64-mingw32/4.8/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Added:
>>> cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/x86_64-w64-mingw32/include/.keep
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/Inputs/mingw_ubuntu_tree/usr/x86_64-w64-mingw32/include/.keep?rev=243098&view=auto
>>>
>>> ==============================================================================
>>>     (empty)
>>>
>>> Removed: cfe/trunk/test/Driver/mingw-linux.cpp
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/mingw-linux.cpp?rev=243097&view=auto
>>>
>>>
>>> ==============================================================================
>>> --- cfe/trunk/test/Driver/mingw-linux.cpp (original)
>>> +++ cfe/trunk/test/Driver/mingw-linux.cpp (removed)
>>> @@ -1,20 +0,0 @@
>>> -// XFAIL: system-windows
>>> -// RUN: %clang -target x86_64-pc-windows-gnu -c -###
>>> --sysroot=/dummy/x86_64-w64-mingw32/5.1.0 %s 2>&1 | FileCheck
>>> -check-prefix=CHECK %s
>>> -
>>> -// CHECK: /usr/x86_64-w64-mingw32/include/c++/
>>> -// CHECK: /usr/x86_64-w64-mingw32/include/c++/x86_64-w64-mingw32/
>>> -// CHECK: /usr/x86_64-w64-mingw32/include/c++/backward
>>> -// CHECK: /usr/x86_64-w64-mingw32/include/c++/5.1.0/
>>> -// CHECK: /usr/x86_64-w64-mingw32/include/c++/5.1.0/x86_64-w64-mingw32/
>>> -// CHECK: /usr/x86_64-w64-mingw32/include/c++/5.1.0/backward
>>> -// CHECK: /usr/include/c++/5.1.0/
>>> -// CHECK: /usr/include/c++/5.1.0/x86_64-w64-mingw32/
>>> -// CHECK: /usr/include/c++/5.1.0/backward
>>> -// CHECK: /dummy/x86_64-w64-mingw32/5.1.0/include/c++/
>>> -// CHECK:
>>> /dummy/x86_64-w64-mingw32/5.1.0/include/c++/x86_64-w64-mingw32/
>>> -// CHECK: /dummy/x86_64-w64-mingw32/5.1.0/include/c++/backward
>>> -// CHECK: /dummy/x86_64-w64-mingw32/5.1.0/include
>>> -// CHECK: /usr/x86_64-w64-mingw32/sys-root/mingw/include
>>> -// CHECK: /dummy/x86_64-w64-mingw32/5.1.0/include-fixed
>>> -// CHECK: /usr/x86_64-w64-mingw32/include
>>> -// CHECK: /usr/include
>>>
>>> Removed: cfe/trunk/test/Driver/mingw-win.cpp
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/mingw-win.cpp?rev=243097&view=auto
>>>
>>> ==============================================================================
>>> --- cfe/trunk/test/Driver/mingw-win.cpp (original)
>>> +++ cfe/trunk/test/Driver/mingw-win.cpp (removed)
>>> @@ -1,19 +0,0 @@
>>> -// REQUIRES: system-windows
>>> -// RUN: %clang -target i686-pc-windows-gnu -c -### --sysroot=c:\dummy
>>> %s 2>&1 | FileCheck -check-prefix=CHECK %s
>>> -
>>> -// CHECK: c:\\dummy\\i686-w64-mingw32\\include\\c++
>>> -// CHECK: c:\\dummy\\i686-w64-mingw32\\include\\c++\\i686-w64-mingw32\\
>>> -// CHECK: c:\\dummy\\i686-w64-mingw32\\include\\c++\\backward
>>> -// CHECK: c:\\dummy\\i686-w64-mingw32\\include\\c++\\dummy\\
>>> -// CHECK:
>>> c:\\dummy\\i686-w64-mingw32\\include\\c++\\dummy\\i686-w64-mingw32\\
>>> -// CHECK: c:\\dummy\\i686-w64-mingw32\\include\\c++\\dummy\\backward
>>> -// CHECK: c:\\dummy\\include\\c++\\dummy\\
>>> -// CHECK: c:\\dummy\\include\\c++\\dummy\\i686-w64-mingw32\\
>>> -// CHECK: c:\\dummy\\include\\c++\\dummy\\backward
>>> -// CHECK: c:\\dummy\\include\\c++\\
>>> -// CHECK: c:\\dummy\\include\\c++\\i686-w64-mingw32\\
>>> -// CHECK: c:\\dummy\\include\\c++\\backward
>>> -// CHECK: c:\\dummy\\include
>>> -// CHECK: c:\\dummy\\include-fixed
>>> -// CHECK: c:\\dummy\\i686-w64-mingw32\\include
>>> -// CHECK: c:\\dummy\\include
>>>
>>> Added: cfe/trunk/test/Driver/mingw.cpp
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/mingw.cpp?rev=243098&view=auto
>>>
>>>
>>> ==============================================================================
>>> --- cfe/trunk/test/Driver/mingw.cpp (added)
>>> +++ cfe/trunk/test/Driver/mingw.cpp Fri Jul 24 03:50:15 2015
>>> @@ -0,0 +1,54 @@
>>> +// RUN: %clang -target i686-pc-windows-gnu -c -###
>>> --sysroot=%S/Inputs/mingw_mingw_org_tree/mingw %s 2>&1 | FileCheck
>>> -check-prefix=CHECK_MINGW_ORG_TREE %s
>>> +// CHECK_MINGW_ORG_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}mingw32{{/|\\\\}}4.8.1{{/|\\\\}}include{{/|\\\\}}c++"
>>> +// CHECK_MINGW_ORG_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}mingw32{{/|\\\\}}4.8.1{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}mingw32"
>>> +// CHECK_MINGW_ORG_TREE:
>>> "{{.*}}{{/|\\\\}}Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}mingw32{{/|\\\\}}4.8.1{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}backward"
>>> +// CHECK_MINGW_ORG_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}mingw32{{/|\\\\}}4.8.1{{/|\\\\}}include"
>>> +// CHECK_MINGW_ORG_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}mingw32{{/|\\\\}}4.8.1{{/|\\\\}}include-fixed"
>>> +// CHECK_MINGW_ORG_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}mingw32{{/|\\\\}}include"
>>> +// CHECK_MINGW_ORG_TREE:
>>> {{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}include
>>> +
>>> +
>>> +// RUN: %clang -target i686-pc-windows-gnu -c -###
>>> --sysroot=%S/Inputs/mingw_mingw_builds_tree/mingw32 %s 2>&1 | FileCheck
>>> -check-prefix=CHECK_MINGW_BUILDS_TREE %s
>>> +// CHECK_MINGW_BUILDS_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_builds_tree/mingw32{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include{{/|\\\\}}c++"
>>> +// CHECK_MINGW_BUILDS_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_builds_tree/mingw32{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}i686-w64-mingw32"
>>> +// CHECK_MINGW_BUILDS_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_builds_tree/mingw32{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}backward"
>>> +// CHECK_MINGW_BUILDS_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_builds_tree/mingw32{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}4.9.1{{/|\\\\}}include"
>>> +// CHECK_MINGW_BUILDS_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_builds_tree/mingw32{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}4.9.1{{/|\\\\}}include-fixed"
>>> +// CHECK_MINGW_BUILDS_TREE:
>>> "{{.*}}/Inputs/mingw_mingw_builds_tree/mingw32{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include"
>>> +
>>> +
>>> +// RUN: %clang -target i686-pc-windows-gnu -c -###
>>> --sysroot=%S/Inputs/mingw_msys2_tree/msys64/mingw32 %s 2>&1 | FileCheck
>>> -check-prefix=CHECK_MINGW_MSYS_TREE %s
>>> +// CHECK_MINGW_MSYS_TREE:
>>> "{{.*}}/Inputs/mingw_msys2_tree/msys64{{/|\\\\}}mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}4.9.2"
>>> +// CHECK_MINGW_MSYS_TREE:
>>> "{{.*}}/Inputs/mingw_msys2_tree/msys64/mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}4.9.2{{/|\\\\}}i686-w64-mingw32"
>>> +// CHECK_MINGW_MSYS_TREE:
>>> "{{.*}}/Inputs/mingw_msys2_tree/msys64/mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}4.9.2{{/|\\\\}}backward"
>>> +// CHECK_MINGW_MSYS_TREE:
>>> "{{.*}}/Inputs/mingw_msys2_tree/msys64/mingw32{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}4.9.2{{/|\\\\}}include"
>>> +// CHECK_MINGW_MSYS_TREE:
>>> "{{.*}}/Inputs/mingw_msys2_tree/msys64/mingw32{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}4.9.2{{/|\\\\}}include-fixed"
>>> +// CHECK_MINGW_MSYS_TREE:
>>> "{{.*}}/Inputs/mingw_msys2_tree/msys64/mingw32{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include"
>>> +// CHECK_MINGW_MSYS_TREE:
>>> "{{.*}}/Inputs/mingw_msys2_tree/msys64/mingw32{{/|\\\\}}include"
>>> +
>>> +
>>> +// RUN: %clang -target x86_64-pc-windows-gnu -c -###
>>> --sysroot=%S/Inputs/mingw_opensuse_tree/usr %s 2>&1 | FileCheck
>>> -check-prefix=CHECK_MINGW_OPENSUSE_TREE %s
>>> +// CHECK_MINGW_OPENSUSE_TREE:
>>> "{{.*}}/Inputs/mingw_opensuse_tree/usr{{/|\\\\}}lib64{{/|\\\\}}gcc{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}5.1.0{{/|\\\\}}include{{/|\\\\}}c++"
>>> +// CHECK_MINGW_OPENSUSE_TREE:
>>> "{{.*}}/Inputs/mingw_opensuse_tree/usr{{/|\\\\}}lib64{{/|\\\\}}gcc{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}5.1.0{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}x86_64-w64-mingw32"
>>> +// CHECK_MINGW_OPENSUSE_TREE:
>>> "{{.*}}/Inputs/mingw_opensuse_tree/usr{{/|\\\\}}lib64{{/|\\\\}}gcc{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}5.1.0{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}backward"
>>> +// CHECK_MINGW_OPENSUSE_TREE:
>>> "{{.*}}/Inputs/mingw_opensuse_tree/usr{{/|\\\\}}lib64{{/|\\\\}}gcc{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}5.1.0{{/|\\\\}}include"
>>> +// CHECK_MINGW_OPENSUSE_TREE:
>>> "/usr/x86_64-w64-mingw32/sys-root/mingw/include"
>>> +// CHECK_MINGW_OPENSUSE_TREE:
>>> "{{.*}}/Inputs/mingw_opensuse_tree/usr{{/|\\\\}}lib64{{/|\\\\}}gcc{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}5.1.0{{/|\\\\}}include-fixed"
>>> +
>>> +
>>> +// RUN: %clang -target i686-pc-windows-gnu -c -###
>>> --sysroot=%S/Inputs/mingw_arch_tree/usr %s 2>&1 | FileCheck
>>> -check-prefix=CHECK_MINGW_ARCH_TREE %s
>>> +// CHECK_MINGW_ARCH_TREE:
>>> "{{.*}}/Inputs/mingw_arch_tree/usr{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}5.1.0"
>>> +// CHECK_MINGW_ARCH_TREE:
>>> "{{.*}}/Inputs/mingw_arch_tree/usr{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}5.1.0{{/|\\\\}}i686-w64-mingw32"
>>> +// CHECK_MINGW_ARCH_TREE:
>>> "{{.*}}/Inputs/mingw_arch_tree/usr{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}5.1.0{{/|\\\\}}backward"
>>> +// CHECK_MINGW_ARCH_TREE:
>>> "{{.*}}/Inputs/mingw_arch_tree/usr{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}5.1.0{{/|\\\\}}include"
>>> +// CHECK_MINGW_ARCH_TREE:
>>> "{{.*}}/Inputs/mingw_arch_tree/usr{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}5.1.0{{/|\\\\}}include-fixed"
>>> +// CHECK_MINGW_ARCH_TREE:
>>> "{{.*}}/Inputs/mingw_arch_tree/usr{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include"
>>> +
>>> +
>>> +// RUN: %clang -target x86_64-pc-windows-gnu -c -###
>>> --sysroot=%S/Inputs/mingw_ubuntu_tree/usr %s 2>&1 | FileCheck
>>> -check-prefix=CHECK_MINGW_UBUNTU_TREE %s
>>> +// CHECK_MINGW_UBUNTU_TREE:
>>> "{{.*}}/Inputs/mingw_ubuntu_tree/usr{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}4.8"
>>> +// CHECK_MINGW_UBUNTU_TREE:
>>> "{{.*}}/Inputs/mingw_ubuntu_tree/usr{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}4.8{{/|\\\\}}x86_64-w64-mingw32"
>>> +// CHECK_MINGW_UBUNTU_TREE:
>>> "{{.*}}/Inputs/mingw_ubuntu_tree/usr{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}4.8{{/|\\\\}}backward"
>>> +// CHECK_MINGW_UBUNTU_TREE:
>>> "{{.*}}/Inputs/mingw_ubuntu_tree/usr{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}4.8{{/|\\\\}}include"
>>> +// CHECK_MINGW_UBUNTU_TREE:
>>> "{{.*}}/Inputs/mingw_ubuntu_tree/usr{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}4.8{{/|\\\\}}include-fixed"
>>> +// CHECK_MINGW_UBUNTU_TREE:
>>> "{{.*}}/Inputs/mingw_ubuntu_tree/usr{{/|\\\\}}x86_64-w64-mingw32{{/|\\\\}}include"
>>>
>>>
>>> _______________________________________________
>>> cfe-commits mailing list
>>> cfe-commits at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20150724/510405c4/attachment.html>


More information about the cfe-commits mailing list