<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/114308>114308</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [SandboxIR] Warnings on Windows when building LLVM with clang-cl.exe
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            build-problem,
            platform:windows,
            llvm:transforms
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          farzonl
      </td>
    </tr>
</table>

<pre>
    ```bash
1 warning generated.
[2861/4875] Building CXX object lib/SandboxIR/CMakeFiles/LLVMSandboxIR.dir/Constant.cpp.obj
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(309,52): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  309 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalIFunc
      | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(804,52): note: previous explicit instantiation is here
  804 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalIFunc
      | ^
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(314,17): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  314 | LLVMGVToGV::operator()(llvm::Function &LLVMGV) const;
      | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(809,17): note: previous explicit instantiation is here
  809 | LLVMGVToGV::operator()(llvm::Function &LLVMGV) const;
      | ^
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(318,38): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  318 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(322,51): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  322 | llvm::GlobalValue>::LLVMGVToGV::operator()(llvm::GlobalAlias
      | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(817,51): note: previous explicit instantiation is here
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(322,51): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  322 | llvm::GlobalValue>::LLVMGVToGV::operator()(llvm::GlobalAlias
      | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(322,51): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  322 | llvm::GlobalValue>::LLVMGVToGV::operator()(llvm::GlobalAlias
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(322,51): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(813,38): note: previous explicit instantiation is here
  813 | llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalVariable &LLVMGV)
 | ^
D:/projects/llvm-project/llvm/lib/SandboxIR/Constant.cpp(322,51): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  322 | llvm::GlobalValue>::LLVMGVToGV::operator()(llvm::GlobalAlias
      | ^
D:/projects/llvm-project/llvm/include\llvm/SandboxIR/Constant.h(817,51): note: previous explicit instantiation is here
  817 | llvm::GlobalValue>::LLVMGVToGV::operator()(llvm::GlobalAlias
      | ^
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsmd-P4yYQx_-a8QtaC4NJ7Ac_5MdlddKtKrVV9l7BJjFXAhHgzbZ_fYWd7OauV10v1a2S1lEkG8MwMx--Q2LBvVdbI2UFbA5smfAutNZVG-7-sEYnwja_VzDBw1dw3wJeAp5l6MCdUWaLttJIx4Ns0qEH2JwUkwzIKi-mDNgSzTulmzh08fEjsuKTrAPSSgBZ_cJNI-zz-5-BrBYP_De5Ulp6IKsPH9YPL51po1wcYI0P3IS03u9TKz4N7pZAZ0BWe2fjvNFW66fd3bF9bMbLXx2ezQekoLgEsmAESAl0dkov3jbdXquaB4nkc7xTAanBVPGgrEF2g4BM7T5ysA5IEecgU6S2xjrZIO4RRw-qdtbbTUDyOUjjoyGw-d3j7tRxF-Rur3mQwJZDcghRXCKYLlCfBZ0Bnd1rK7j-qccI9N3wMPK6X_9q79dD-8tYii_t3686U5-cxE90Auzd90FVptZdI4Etjg--yrcFUhQ4P6drbJDxunfySdnO_x1Z5VErnTwFWuD8iml8W2JZhJBNr0xi2QD1O6hFXH1YQCaDGZAS1TFboPM3lVV5TvRiWZVXRuAfSKkAsqDFtUmp-CH1ueZOcaHlZ7SPTn-0wjJ6DvpShWX0NsB8W3iExI08uzLhEfJVvmuuO3k53plW3L_ldhZ3sle4F4ltLIGxBG66BEaxjWIblfX_VNa46uMf2xHMhWBGFFeOYozq1qO6oQ3vJn___0OvMf_-TT6Kbfr2MF5Oe5Kmok1JS57IKptSTElO80nSVjiTm5KVeUGJlCwnjJW4zOlU4JLVguNEVQSTPMMUk4yWeJI2PBMlZiUWlG4ymkGO5Y4rncbQUuu2ifK-k1WW5RQXieZCat8fSREiOqWbuBZCyx30ogVCom421sW8Dso09uBfuo7pBseNj0P6HrZMXNWvqui2HnKslQ_-1X9QQfeHYK9LypbocSgKj6xBj4MbdGilQeJ0phXho4MKLao1N9u7WqfyWSad01Ubwt4PygKy2qrQdiKt7e6sRj9XWc8gqu-I4akifwYAAP__UM2h4A">