[Bug c/81233] -Wdiscarded-qualifiers and Wincompatible-pointer-types missing important detail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81233 --- Comment #6 from Eric Gallager --- (In reply to Eric Gallager from comment #5) > (In reply to Marek Polacek from comment #3) > > Fixed. Further improvements are possible. > > Uh... reopening for the possible further improvements; > -Wdiscarded-qualifiers still doesn't say quite enough, IMO Also I think that a separate flag like clang's -Wincompatible-pointer-types-discards-qualifiers (mentioned in the OP) would be useful for additional granularity; often times there are projects where -Werror=incompatible-pointer-types and -Werror=discarded-qualifiers would make building them too difficult, but -Werror=incompatible-pointer-types-discards-qualifier wouldn't
[Bug c/81233] -Wdiscarded-qualifiers and Wincompatible-pointer-types missing important detail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81233 Eric Gallager changed: What|Removed |Added Status|RESOLVED|REOPENED Summary|--Wdiscarded-qualifiers and |-Wdiscarded-qualifiers and |Wincompatible-pointer-types |Wincompatible-pointer-types |missing important detail|missing important detail CC||egallager at gcc dot gnu.org Resolution|FIXED |--- --- Comment #5 from Eric Gallager --- (In reply to Marek Polacek from comment #3) > Fixed. Further improvements are possible. Uh... reopening for the possible further improvements; -Wdiscarded-qualifiers still doesn't say quite enough, IMO
[Bug c/81233] --Wdiscarded-qualifiers and Wincompatible-pointer-types missing important detail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81233 --- Comment #4 from Aldy Hernandez --- Author: aldyh Date: Wed Sep 13 16:42:21 2017 New Revision: 252354 URL: https://gcc.gnu.org/viewcvs?rev=252354&root=gcc&view=rev Log: PR c/81233 * c-typeck.c (pedwarn_init): Make the function take a variable list. Call emit_diagnostic_valist instead of pedwarn. (convert_for_assignment): Unroll the PEDWARN_FOR_ASSIGNMENT macro. Print the relevant types in diagnostics. * diagnostic-core.h (emit_diagnostic_valist): Add declaration. * diagnostic.c (emit_diagnostic): Add a comment. (emit_diagnostic_valist): New function. * gcc.dg/diagnostic-types-1.c: New test. * gcc.dg/assign-warn-1.c: Update warning messages. * gcc.dg/assign-warn-2.c: Likewise. * gcc.dg/c90-const-expr-5.c: Likewise. * gcc.dg/c99-const-expr-5.c: Likewise. * gcc.dg/conv-2.c: Likewise. * gcc.dg/init-bad-7.c: Likewise. * gcc.dg/overflow-warn-1.c: Likewise. * gcc.dg/overflow-warn-2.c: Likewise. * gcc.dg/overflow-warn-3.c: Likewise. * gcc.dg/overflow-warn-4.c: Likewise. * gcc.dg/pointer-array-atomic.c: Likewise. * gcc.dg/pr26865.c: Likewise. * gcc.dg/pr61162-2.c: Likewise. * gcc.dg/pr61162.c: Likewise. * gcc.dg/pr67730-2.c: Likewise. * gcc.dg/pr69156.c: Likewise. * gcc.dg/pr70174.c: Likewise. * objc.dg/proto-lossage-4.m: Likewise. Added: branches/range-gen2/gcc/testsuite/gcc.dg/diagnostic-types-1.c Modified: branches/range-gen2/gcc/ChangeLog branches/range-gen2/gcc/c/ChangeLog branches/range-gen2/gcc/c/c-typeck.c branches/range-gen2/gcc/diagnostic-core.h branches/range-gen2/gcc/diagnostic.c branches/range-gen2/gcc/testsuite/ChangeLog branches/range-gen2/gcc/testsuite/gcc.dg/assign-warn-1.c branches/range-gen2/gcc/testsuite/gcc.dg/assign-warn-2.c branches/range-gen2/gcc/testsuite/gcc.dg/c90-const-expr-5.c branches/range-gen2/gcc/testsuite/gcc.dg/c99-const-expr-5.c branches/range-gen2/gcc/testsuite/gcc.dg/conv-2.c branches/range-gen2/gcc/testsuite/gcc.dg/init-bad-7.c branches/range-gen2/gcc/testsuite/gcc.dg/overflow-warn-1.c branches/range-gen2/gcc/testsuite/gcc.dg/overflow-warn-2.c branches/range-gen2/gcc/testsuite/gcc.dg/overflow-warn-3.c branches/range-gen2/gcc/testsuite/gcc.dg/overflow-warn-4.c branches/range-gen2/gcc/testsuite/gcc.dg/pointer-array-atomic.c branches/range-gen2/gcc/testsuite/gcc.dg/pr26865.c branches/range-gen2/gcc/testsuite/gcc.dg/pr61162-2.c branches/range-gen2/gcc/testsuite/gcc.dg/pr61162.c branches/range-gen2/gcc/testsuite/gcc.dg/pr67730-2.c branches/range-gen2/gcc/testsuite/gcc.dg/pr69156.c branches/range-gen2/gcc/testsuite/gcc.dg/pr70174.c branches/range-gen2/gcc/testsuite/objc.dg/proto-lossage-4.m
[Bug c/81233] --Wdiscarded-qualifiers and Wincompatible-pointer-types missing important detail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81233 Marek Polacek changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #3 from Marek Polacek --- Fixed. Further improvements are possible.
[Bug c/81233] --Wdiscarded-qualifiers and Wincompatible-pointer-types missing important detail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81233 --- Comment #2 from Marek Polacek --- Author: mpolacek Date: Wed Aug 9 11:28:22 2017 New Revision: 250985 URL: https://gcc.gnu.org/viewcvs?rev=250985&root=gcc&view=rev Log: PR c/81233 * c-typeck.c (pedwarn_init): Make the function take a variable list. Call emit_diagnostic_valist instead of pedwarn. (convert_for_assignment): Unroll the PEDWARN_FOR_ASSIGNMENT macro. Print the relevant types in diagnostics. * diagnostic-core.h (emit_diagnostic_valist): Add declaration. * diagnostic.c (emit_diagnostic): Add a comment. (emit_diagnostic_valist): New function. * gcc.dg/diagnostic-types-1.c: New test. * gcc.dg/assign-warn-1.c: Update warning messages. * gcc.dg/assign-warn-2.c: Likewise. * gcc.dg/c90-const-expr-5.c: Likewise. * gcc.dg/c99-const-expr-5.c: Likewise. * gcc.dg/conv-2.c: Likewise. * gcc.dg/init-bad-7.c: Likewise. * gcc.dg/overflow-warn-1.c: Likewise. * gcc.dg/overflow-warn-2.c: Likewise. * gcc.dg/overflow-warn-3.c: Likewise. * gcc.dg/overflow-warn-4.c: Likewise. * gcc.dg/pointer-array-atomic.c: Likewise. * gcc.dg/pr26865.c: Likewise. * gcc.dg/pr61162-2.c: Likewise. * gcc.dg/pr61162.c: Likewise. * gcc.dg/pr67730-2.c: Likewise. * gcc.dg/pr69156.c: Likewise. * gcc.dg/pr70174.c: Likewise. * objc.dg/proto-lossage-4.m: Likewise. Added: trunk/gcc/testsuite/gcc.dg/diagnostic-types-1.c Modified: trunk/gcc/ChangeLog trunk/gcc/c/ChangeLog trunk/gcc/c/c-typeck.c trunk/gcc/diagnostic-core.h trunk/gcc/diagnostic.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/assign-warn-1.c trunk/gcc/testsuite/gcc.dg/assign-warn-2.c trunk/gcc/testsuite/gcc.dg/c90-const-expr-5.c trunk/gcc/testsuite/gcc.dg/c99-const-expr-5.c trunk/gcc/testsuite/gcc.dg/conv-2.c trunk/gcc/testsuite/gcc.dg/init-bad-7.c trunk/gcc/testsuite/gcc.dg/overflow-warn-1.c trunk/gcc/testsuite/gcc.dg/overflow-warn-2.c trunk/gcc/testsuite/gcc.dg/overflow-warn-3.c trunk/gcc/testsuite/gcc.dg/overflow-warn-4.c trunk/gcc/testsuite/gcc.dg/pointer-array-atomic.c trunk/gcc/testsuite/gcc.dg/pr26865.c trunk/gcc/testsuite/gcc.dg/pr61162-2.c trunk/gcc/testsuite/gcc.dg/pr61162.c trunk/gcc/testsuite/gcc.dg/pr67730-2.c trunk/gcc/testsuite/gcc.dg/pr69156.c trunk/gcc/testsuite/gcc.dg/pr70174.c trunk/gcc/testsuite/objc.dg/proto-lossage-4.m
[Bug c/81233] --Wdiscarded-qualifiers and Wincompatible-pointer-types missing important detail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81233 Marek Polacek changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |mpolacek at gcc dot gnu.org
[Bug c/81233] --Wdiscarded-qualifiers and Wincompatible-pointer-types missing important detail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81233 Marek Polacek changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2017-06-27 CC||mpolacek at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Marek Polacek --- Confirmed, I really think we should be better at this. I'll take a look, I guess next week.