1 |
On 13-09-2018 07:36:09 -0400, Richard Yao wrote: |
2 |
> |
3 |
> |
4 |
> > On Sep 12, 2018, at 6:55 PM, Thomas Deutschmann <whissi@g.o> wrote: |
5 |
> > |
6 |
> >> On 2018-09-12 16:50, Rich Freeman wrote: |
7 |
> >> There is also the case where we want these warnings to block |
8 |
> >> installation, because the risk of there being a problem is too great. |
9 |
> > |
10 |
> > I really disagree with that. So many devs have already said multiple |
11 |
> > times in this thread that "-Werror" is only turning existing warnings |
12 |
> > into fatal errors but "-Werror" itself doesn't add any new checks and |
13 |
> > more often requires "-O3" to be useful. |
14 |
> The way that compilers work is that the warnings are generated in the front end while the optimization level affects the backend. That means that -O3 has no effect on the code that does error generation. This remark about -O3 being needed to make -Werror useful is just plain wrong. |
15 |
|
16 |
Huh? -O3 enables more checks, which can generate more warnings. -O3 |
17 |
isn't "needed", but if upstream is so interested in clean and correct |
18 |
code, they should've fixed all warnings in the first place and thus |
19 |
enabled all of them. In fact, I expect every sane upstream to use "-O3 |
20 |
-Wall -Werror" in one of their automated builds. Not that this catches |
21 |
anything useful on x86{,_64} when there is for instance use of signed |
22 |
and unsigned char types, so it isn't conclusive. |
23 |
|
24 |
The whole point in here is that -Werror doesn't add much if you care. |
25 |
The whole point why it is not desired in Gentoo is that users don't |
26 |
necessarily are developers, or even interested in fixing warnings -- |
27 |
regardless whether they point to real problems or not. |
28 |
|
29 |
If there are real problems in a package (exposed by a compiler or not) |
30 |
then this should ideally stand out during ~arch testing, or even before |
31 |
when the Gentoo maintainer examines the build (might even use -Werror |
32 |
for his own purposes). If such code ends up in stable arch we just made |
33 |
a stabilisation mistake, or got royally messed up by upstream, depending |
34 |
how you look at it. |
35 |
|
36 |
Fabian |
37 |
|
38 |
-- |
39 |
Fabian Groffen |
40 |
Gentoo on a different level |