<div class="gmail_quote">Le 1 novembre 2011 00:03, Miles Bader <span dir="ltr"><<a href="mailto:miles@gnu.org">miles@gnu.org</a>></span> a écrit :<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
2011/11/1 Chandler Carruth <<a href="mailto:chandlerc@google.com">chandlerc@google.com</a>>:<br>
<div class="im">> I'm really sorry that came off as condescending, it wasn't meant to be. The<br>
> cost imposed by switching to Clang's error messages was one we took very<br>
> seriously. Working with GCC for a long time isn't a negative statement about<br>
> the developer, it's a simple reality given the long history GCC has in the<br>
> open source community as essentially the only compiler option available.<br>
<br>
</div>Er, well you basically divided your user base into two categories:<br>
those who eagerly embraced clang, and those who were too<br>
dim/rigid/inexperienced to appreciate it -- with what seems to be the<br>
implication that anybody in the former group _must_ be in the latter.<br>
That's veering pretty close to True Scotsman territory...<br>
<br>
While I'm sure both types of user are present, I suspect that you're<br>
omitting another group:  those who don't really care so much either<br>
way -- especially amongst those whose compiler usage doesn't usually<br>
tickle the particularly egregious cases (e.g. C developers -- like<br>
Gnome! -- and C++ devs who aren't pushing boundaries with templates),<br>
and developers who are experienced enough (as I imagine most google<br>
devs to be!) that they aren't particularly bothered by the specific<br>
wording of error messages...<br>
<br>
Again, I don't want to seem like I'm speaking _against_ clang -- I'm<br>
not, I use it, and I like it -- and clang certainly does generally<br>
have pretty clear error messages.  But there seems to be this idea<br>
floating around that gcc's error messages are unusably bad, and that<br>
clang's are in a completely different class, and _that_ I just don't<br>
see.<br>
<br>
[I should note, btw, that gcc is developed too -- and that includes<br>
improving the error messages, and compilation speed...]<br>
<div><div></div><div class="h5"><br>
-miles<br>
<br>
--<br>
Cat is power.  Cat is peace.<br>
<br></div></div></blockquote><div> <br>Hello,<br><br>I think you misunderstood Chandler's statement here. From the way I read it (but then, I am a French speaker first and foremost...) it seemed to me that some people were rightly concerned about the lack of productivity that would result from having to learn the "clang" way. I think it's a valid concern.<br>
<br>Personally, I have been using Clang at home for a while, and gcc at work (company policy) and I will fully admit that despite my real interest in Clang and its definitely better diagnosis, I am simply more used to gcc's diagnostics and thus more adept at deciphering them, no matter how arcane they may appear to a beginner...<br>
<br>Another interesting point though, for the switch, is the performance of the resulting binary. Development is one thing, and we have a lot of tools at our disposal to help out: compiling with both Clang and gcc with warnings on certainly help catch a lot of errors, static analysis is quite useful as well, debug builds etc... However when pushing software to a server, we still want to heck out as much speed and as few memory as we can from it.<br>
<br>As far as I know, gcc still has the lead here (but then the only serious benchmarks I saw were from phoronix, and it was a while ago). I seem to remember that LLVM was more adept for numerical computation, but it's of little interest to me (and my company). If someone had accurate figures Clang 3.0 / gcc 4.7, it would be interesting to see how it falls out now.<br>
<br>--Matthieu<br></div></div>