<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - clang-cl does not overwrite resource-dir when setting -Xclang -resource-dir -Xclang <some directory>"
   href="https://llvm.org/bugs/show_bug.cgi?id=28074">28074</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>clang-cl does not overwrite resource-dir when setting -Xclang -resource-dir -Xclang <some directory>
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows NT
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>-New Bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>shinyak@google.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I'd like to specify another resource-dir in clang-cl. `-Xclang -resource-dir
-Xclang <some directory>` does not work.

When I set -Xclang -resource-dir -Xclang D:\tmp\t, I expect clang-cl contains
D:\tmp\t\include as system include directory.
However, it doesn't.
When I set -resource-dir /tmp/t in Linux clang, it contains /tmp/t/include as
system include directory.

Looking at -### output, -resource-dir appears two times, and the first one is
used.

Repro:

Current working directory is D:\tmp

D:\tmp>type D:\tmp\t\include\A.h
#define A 100
#define B 100

D:\tmp>type test2.cpp
#include <A.h>

int main() {
  return A + B;
}

D:\tmp>"D:\src\chromium_clang\src\third_party\llvm-build\Release+Asserts\bin\cla
ng-cl.exe" -Xclang -resource-dir -Xclang D:\tmp\t test2.cpp
test2.cpp(1,10):  fatal error: 'A.h' file not found
#include <A.h>
         ^
1 error generated.

D:\tmp>"D:\src\chromium_clang\src\third_party\llvm-build\Release+Asserts\bin\cla
ng-cl.exe" -Xclang -resource-dir -Xclang D:\tmp\t test2.cpp -###
clang version 3.9.0 (trunk 270823)
Target: x86_64-pc-windows-msvc
Thread model: posix
InstalledDir:
D:\src\chromium_clang\src\third_party\llvm-build\Release+Asserts\b
in

"D:\\src\\chromium_clang\\src\\third_party\\llvm-build\\Release+Asserts\\bin\\c
lang-cl.exe" "-cc1" "-triple" "x86_64-pc-windows-msvc19.0.23918" "-emit-obj"
"-m
relax-all" "-mincremental-linker-compatible" "-disable-free" "-main-file-name"
"
test2.cpp" "-mrelocation-model" "pic" "-pic-level" "2" "-mthread-model" "posix"
"-relaxed-aliasing" "-fmath-errno" "-masm-verbose" "-mconstructor-aliases"
"-mun
wind-tables" "-target-cpu" "x86-64" "-D_MT" "-flto-visibility-public-std"
"--dep
endent-lib=libcmt" "--dependent-lib=oldnames" "-fms-volatile"
"-fdiagnostics-for
mat" "msvc" "-momit-leaf-frame-pointer" "-dwarf-column-info"
"-debugger-tuning=g
db" "-resource-dir"
"D:\\src\\chromium_clang\\src\\third_party\\llvm-build\\Rele
ase+Asserts\\bin\\..\\lib\\clang\\3.9.0" "-internal-isystem"
"D:\\src\\chromium_
clang\\src\\third_party\\llvm-build\\Release+Asserts\\bin\\..\\lib\\clang\\3.9.0
\\include" "-internal-isystem" "C:\\Program Files (x86)\\Microsoft Visual
Studio
 14.0\\VC\\include" "-internal-isystem" "C:\\Program Files (x86)\\Windows
Kits\\
10\\Include\\10.0.10240.0\\ucrt" "-internal-isystem" "C:\\Program Files
(x86)\\W
indows Kits\\8.1\\include\\shared" "-internal-isystem" "C:\\Program Files
(x86)\
\Windows Kits\\8.1\\include\\um" "-internal-isystem" "C:\\Program Files
(x86)\\W
indows Kits\\8.1\\include\\winrt" "-fdeprecated-macro"
"-fdebug-compilation-dir"
 "D:\\tmp" "-ferror-limit" "19" "-fmessage-length" "80" "-fms-extensions"
"-fms-
compatibility" "-fms-compatibility-version=19.0.23918" "-std=c++14"
"-fdelayed-t
emplate-parsing" "-fobjc-runtime=gcc" "-fdiagnostics-show-option"
"-fcolor-diagn
ostics" "-resource-dir" "D:\\tmp\\t" "-o"
"C:\\Users\\shinyak\\AppData\\Local\\T
emp\\test2-5f5bf9.obj" "-x" "c++" "test2.cpp"
 "C:\\Program Files (x86)\\Microsoft Visual Studio
14.0\\VC\\bin\\amd64\\link.ex
e" "-out:test2.exe" "-libpath:C:\\Program Files (x86)\\Microsoft Visual Studio
1
4.0\\VC\\lib\\amd64" "-libpath:C:\\Program Files (x86)\\Windows
Kits\\10\\Lib\\1
0.0.10240.0\\ucrt\\x64" "-libpath:C:\\Program Files (x86)\\Windows
Kits\\8.1\\Li
b\\winv6.3\\um\\x64" "-nologo"
"C:\\Users\\shinyak\\AppData\\Local\\Temp\\test2-
5f5bf9.obj"</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>