<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2016-09-28 16:13 GMT+07:00 Joerg Sonnenberger via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-">On Wed, Sep 28, 2016 at 01:39:59PM +0700, Serge Pavlov via cfe-dev wrote:<br>
> This feature addresses at least two different use cases:<br>
><br>
> 1. Config file as a way to override compiler defaults.<br>
><br>
> Compiler already has some default settings and it is hardly possible to<br>
> find the settings that suit everybody. For instance, the warning<br>
> -Wundefined-var-template<br>
> is helpful for some users but annoys others. With config file a user could<br>
> put new defaults there and thus customize the compiler. No changes to build<br>
> script is required. Note, this scenario requires just default config files.<br>
<br>
</span>This is *exactly* why I am *strongly* against this. Yes, users do that.<br>
Afterwards, they start to fill random bug reports against projects that<br>
break, because the invocation includes -Werror. This is even worse than<br>
setting a global CFLAGS or CXXFLAGS variable since the expansion of<br>
those are at least generally visible. Hidden user-modifable sources of<br>
flags are a support nightware.<br>
<span class="gmail-"><br></span></blockquote><div> </div><div>Users are of different categories. What you say is true for end users, who just use</div><div>compiler as a tool. But there are other users, who develop clang based SDKs for</div><div>these end users. They would use this feature with more care because support problems</div><div>would be their problems. Otherwise such user may want to turn off unwanted warnings by<br></div><div>modifying compiler sources, this is much worse case.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-"><br>
</span>I dare to say that ICC tends to be used in a much more limited<br>
environment. If you want to allow magic environmental variables in your<br>
build script that are invisible for the casual observer, it is not<br>
difficult to add. Well written build systems already support that<br>
anyway.<br></blockquote><div><br></div><div>Environment variable is just another way to specify configuration file, it does not</div><div>need modification of build scripts. Convenient for experiments. If we support config</div><div>file in any form, there is no additional danger to allow setting up configuration via</div><div>environmental variables. It cannot add any option automatically.</div><div><br></div><div>Thanks,</div><div>--Serge</div><div><br></div></div></div></div>