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:09:38 PDT 2015


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/549dea88/attachment.html>


More information about the cfe-commits mailing list