The only thing that won't work is generating a compilation database on one machine and physically copying it to another machine, but I don't think we should worry about that. We can try to submit a request to CMake to get more info in the compilation database, but something like that is months out, if they do it all<br><div class="gmail_quote"><div dir="ltr">On Sat, Aug 13, 2016 at 12:17 PM Zachary Turner <<a href="mailto:zturner@google.com">zturner@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="white-space:pre-wrap">The json is generated by CMake, so I don't thinks we can do this without patching CMake, which is a non-starter.<br><br>I don't think this will break mingw. Mingw is still Windows, and still uses Windows backslashes, quoting rules, and escaping rules.<br><br>You might be thinking of cygwin, but in the case LLVM_ON_WIN32is not defined.<br><br>Reid, do you agree with this?</div><br><div class="gmail_quote"><div dir="ltr">On Sat, Aug 13, 2016 at 10:35 AM Alexander Kornienko <<a href="mailto:alexfh@google.com" target="_blank">alexfh@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">alexfh added inline comments.<br>
<br>
================<br>
Comment at: lib/Tooling/JSONCompilationDatabase.cpp:119<br>
@@ -115,1 +118,3 @@<br>
StringRef EscapedCommandLine) {<br>
+#if defined(LLVM_ON_WIN32)<br>
+ llvm::BumpPtrAllocator Alloc;<br>
----------------<br>
As noted on D23409, this will likely break mingw compatibility in clang on windows. We should either add a sort of auto-detection of the command line format, or extend the JSON compilation database with a way to specify the command line format used (or as Reid suggests, specify a list of arguments, but this should be done in a backward-compatible way).<br>
<br>
<br>
<a href="https://reviews.llvm.org/D23455" rel="noreferrer" target="_blank">https://reviews.llvm.org/D23455</a><br>
<br>
<br>
<br>
</blockquote></div></blockquote></div>