<div dir="ltr">On Wed, Jun 5, 2013 at 8:53 AM, David Blaikie <span dir="ltr"><<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>></span> wrote:<br><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 class="HOEnZb"><div class="h5">On Tue, Jun 4, 2013 at 1:11 PM, Alexander Kornienko <<a href="mailto:alexfh@google.com">alexfh@google.com</a>> wrote:<br>

> On Tue, Jun 4, 2013 at 10:04 PM, David Blaikie <<a href="mailto:dblaikie@gmail.com">dblaikie@gmail.com</a>> wrote:<br>
>><br>
>> On Tue, Jun 4, 2013 at 1:01 PM, Jordan Rose <<a href="mailto:jordan_rose@apple.com">jordan_rose@apple.com</a>> wrote:<br>
>> ><br>
>> >   That's not right. What if I'm running my tool from the command line?<br>
>> > Better to just take those out of the compilation database.<br>
>><br>
>> I've a slight tendency to agree - though I'm open to<br>
>> correction/countersuggestion: the compilation database only really<br>
>> needs the things that affect compilation. User-features (error limit?<br>
>> caret diagnostics? color diagnostics?) don't seem relevant to the<br>
>> database, but perhaps there's a use case I've not thought of. (or that<br>
>> no one has thought of - which would advocate in favor of leaving them<br>
>> in "just in case", perhaps)<br>
><br>
><br>
> Does it mean that you would better let compilation database filter out<br>
> flags? I'd say that this is not compilation database's responsibility. And<br>
> it will be needed in every compilation database implementation.<br>
<br>
</div></div>The multiple implementation issue is a valid concern. Pity there's no<br>
way for Clang to tell the caller which args are relevant or somesuch.<br>
Oh well.<br></blockquote><div><br></div><div style>There's another design consideration - ultimately, the compilation database should contain exactly what the build system does, which for MSVC would contain MSVC arguments, and for gcc it's gcc arguments. To support this, we have a layer on top of the compilation database: the argument adjusters. So I think design wise this is exactly the right solution.</div>
<div style><br></div><div style>Cheers,</div><div style>/Manuel</div></div></div></div>