This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: proposal to clean up @node Warning Options in invoke.texi


Manuel López-Ibáñez wrote:
On 10 Jan 2007 05:47:19 +0100, Gabriel Dos Reis
<gdr@integrable-solutions.net> wrote:
Chris Pickett <chris.pickett@mail.mcgill.ca> writes:
I assume the -Wno-xxx that are set by default would be moved to the
"default" section?


No. Warnings that are not active by default are obviously disabled, there is no need to mention them. Actually, we should be more specific saying that using Wno-* disables a warning no matter what you put on the commandline, so, strictly speaking, it is false that warnings that are not enabled by default are equivalent to -Wno-*

I agree. But if Gaby actually meant the -Wxxx that are set by default, which currently means -Wno-xxx is listed, then yes, those -Wxxx would be listed in the default section.


| # A <-- B && C option A is implied by options B and C together

Do you have an example of this?

-Wunused-parameter <-- -Wextra && -Wunused


| # A --> B        option A implies option B
| # A ==> B        option A enables option B

What is the difference between "implies" and "enables" ?

Implies: turning on A turns on B. Enables: turning on A means that turning on B will have an effect.

There is probably a better wording, maybe "enables" instead of my "implies", and "is required by" instead of my "enables".

| default --> -Wimport -Wdiv-by-zero -Wendif-labels -Wattributes -Wmultichar
| -Wnormalized=nfc -Wdeprecated-declarations -Winvalid-offset-of
| -Wint-to-pointer-cast -Wpointer-to-int-cast


plus others that are not controlled by named flags.

Should all warnings be controlled by some or other flag?

I think so, but there is doc-only work that can be done first. Insisting on each option being either a super-option or a real option but never both would fix this.


| -Wimplicit <-- -Wall # redundant implication

Hmm, I don't understand what you mean here.


Me neither. Also, you missed -Werror-implicit-function-declaration which is a weird and useless option. I have to investigate its history.

My original graph had:


-Wimplicit-int <-- -Wall
-Wimplicit-function-declaration <-- -Wall
-Werror-implicit-function-declaration
-Wimplicit --> -Wimplicit-int -Wimplicit-function-declaration
-Wimplicit <-- -Wall # redundant implication

The reason I said this last one is redundant is that -Wall is already documented as turning on both sub-options of the -Wimplicit super-option. I don't know what to do about it, but my intuition is that -Wimplicit should go away altogether. For now it seems not documenting the last line above would be good.

Cheers,
Chris


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]