<div dir="ltr">Although we don't use fallback mode, we do use /ZW for WinRT extensions, and this isn't supported by clang-cl (the corollary of this is that we don't use clang-cl). I'm mostly just posting this as a way to say that /ZW is important for many users of cl, and without /fallback I think those users will be prevented from using clang-cl.<div><br></div><div>What currently happens when you use clang for Windows support that comes with recent versions of Visual Studio? Does it silently append /fallback on the user's behalf? Or does it just give you an error if you try to use an unsupported option?</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 20, 2021 at 6:53 AM Aaron Ballman via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Mon, Jan 18, 2021 at 5:32 AM Hans Wennborg via cfe-dev<br>
<<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>> wrote:<br>
><br>
> clang-cl's /fallback option was added back in 2013 [1] as part of<br>
> bringing up clang's native Windows support.<br>
><br>
> Since then, the Windows support has become quite stable, and I'm not<br>
> aware of anyone using /fallback anymore. In Chromium we stopped using<br>
> it in 2015 [2].<br>
><br>
> While /fallback doesn't require a lot of code, it does add a bit of<br>
> complexity to the driver (for example it added a special type of Job),<br>
> and I worry about the code rotting since it's not getting updated to<br>
> handle new flags.<br>
><br>
> So, are there any objections to removing the /fallback mode? My<br>
> proposal is to put a note in the upcoming Clang 12 release, and then<br>
> delete the code after the branch point, meaning it would be gone in<br>
> Clang 13.<br>
><br>
> Please let me know what you think.<br>
<br>
No concerns from me, thank you for looking into it!<br>
<br>
~Aaron<br>
<br>
><br>
> Thanks,<br>
> Hans<br>
><br>
> 1. <a href="https://github.com/llvm/llvm-project/commit/87cfa71071d73c702a833f19c9fe035f31c1275d" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/commit/87cfa71071d73c702a833f19c9fe035f31c1275d</a><br>
> 2. <a href="http://crrev.com/340533" rel="noreferrer" target="_blank">http://crrev.com/340533</a><br>
> _______________________________________________<br>
> cfe-dev mailing list<br>
> <a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a><br>
> <a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</blockquote></div>