<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Sep 13, 2013 at 5:59 AM, Manuel Klimek <span dir="ltr"><<a href="mailto:klimek@google.com" target="_blank">klimek@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div class="h5">On Thu, Sep 12, 2013 at 3:07 AM, Sean Silva <span dir="ltr"><<a href="mailto:silvas@purdue.edu" target="_blank">silvas@purdue.edu</a>></span> wrote:<br>
</div></div><div class="gmail_extra"><div class="gmail_quote"><div><div class="h5">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote"><div>On Wed, Sep 11, 2013 at 8:14 AM, Manuel Klimek <span dir="ltr"><<a href="mailto:klimek@google.com" target="_blank">klimek@google.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>On Wed, Sep 11, 2013 at 12:41 PM, Nicholas Gill <span dir="ltr"><<a href="mailto:mythagel@gmail.com" target="_blank">mythagel@gmail.com</a>></span> wrote:<br>


</div><div class="gmail_extra"><div class="gmail_quote"><div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello cfe-dev,<div><br></div><div>At present unknown keys in the compile_commands.json file will cause the JSONCompilationDatabase parser to reject the file.</div>



<div><br></div><div>1. Would a patch to relax this constraint be accepted?</div>
<div>2. Would other consumers of the compile_commands.json be negatively impacted by unknown keys?</div></div></blockquote><div><br></div></div><div>Yes. This can be rather big, and being able to quickly parse it is important for interactive use cases.</div>


<div>
<div> </div></div></div></div></div></blockquote><div><br></div></div><div>I don't think that this is a very good reason. Parsing the compilation database in the JSON format is going to take O(project size) work, and anything O(project size) is not going to be adequate for interactive use cases anyway.</div>

</div></div></div></blockquote><div><br></div></div></div><div>How do you come to that conclusion? I've run benchmark on chromium-sized projects, and the interactive use-case worked just fine.</div><div> </div></div>
</div></div></blockquote><div><br></div><div>On my machine it takes 30ms to parse the compile_commands.json for clang/llvm (measured with perf(1)). Typically interactive response time expectation is 100ms, so 30ms is about 1/3 of the total time available, which IMO is unacceptable. Conversely, a project >3x larger would be noninteractive.</div>
<div> </div><div>-- Sean Silva</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span><font color="#888888">
<div><br></div><div>-- Sean Silva</div></font></span></div></div></div>
</blockquote></div><br></div></div>
</blockquote></div><br></div></div>