On Tue, Apr 29, 2014 at 6:49 PM, Manuel López-Ibáñez wrote: > This hunk in your patch doesn't seem related: Oops, Sorry. Removed that, and re-tested. > > @@ -509,6 +509,9 @@ Warn about missing fields in struct init > Wsizeof-pointer-memaccess > C ObjC C++ ObjC++ Var(warn_sizeof_pointer_memaccess) Warning > LangEnabledBy(C ObjC C++ ObjC++,Wall) > > +Wsizeof-array-argument > +C Var(warn_sizeof_array_argument) Warning LangEnabledBy(C,Wall) > + > Wsuggest-attribute=format > C ObjC C++ ObjC++ Var(warn_suggest_attribute_format) Warning > Warn about functions which might be candidates for format attributes > > Also, it would be good to update doc/invoke.texi, the current > description is a bit confusing. It says it is enabled by default when > it actually isn't (nor after your patch). I propose something like: > > > Index: gcc/doc/invoke.texi > =================================================================== > --- gcc/doc/invoke.texi (revision 208669) > +++ gcc/doc/invoke.texi (working copy) > @@ -4997,9 +4997,10 @@ > @item -Wvariadic-macros > @opindex Wvariadic-macros > @opindex Wno-variadic-macros > -Warn if variadic macros are used in pedantic ISO C90 mode, or the GNU > -alternate syntax when in pedantic ISO C99 mode. This is default. > -To inhibit the warning messages, use @option{-Wno-variadic-macros}. > +Warn if variadic macros are used in ISO C90 mode, or if the GNU > +alternate syntax is used in ISO C99 mode. This is enabled by either > +@option{-Wpedantic} or @option{-Wtraditional}. To inhibit the warning > +messages, use @option{-Wno-variadic-macros}. > > @item -Wvarargs > @opindex Wvarargs Thanks. I added this to the patch. > > On 29 April 2014 14:41, Prathamesh Kulkarni wrote: Is this version OK ? [libcpp] * macro.c (parse_params): Remove check for Wpedantic for variadic macros. [gcc/c-family] * c.opt (-Wvariadic-macros): Init(-1) instead of Init(1). * c-opts.c (c_common_handle_option): Add case OPT_Wvariadic_macros. (sanitize_cpp_opts): Check condition for pedantic or warn_traditional. [gcc/testsuite/gcc.dg/cpp] * Wvariadic-5.c: New test-case. [gcc/doc] * invoke.text: Change documentation for Wvariadic-macros option. Thanks and Regards, Prathamesh >> On Tue, Apr 29, 2014 at 2:07 PM, Manuel López-Ibáñez >> wrote: >>> On 23 April 2014 20:03, Prathamesh Kulkarni wrote: >>>> I didn't attach the patch, I am extremely sorry for the noise. >>>> I am re-posting the mail. >>>> This is a follow up mail to http://gcc.gnu.org/ml/gcc-help/2014-04/msg00096.html >>>> I have attached patch that prints the warning when passed -Wvariadic-macros >>>> (I mostly followed it along lines of -Wlong-long). >>>> OK for trunk ? >>> >>> Hi Prathamesh, >>> >>> Thanks for CCing me! I cannot approve patches, but it looks almost >>> perfect to me. Did you run the regression testsuite and compare the >>> results before/after your patch? I would expect at least one testcase >>> testing this warning that would be affected by the change. If not, it >>> would be nice to add testcases for this. Also, there is another place >>> that tests for both Wpedantic and Wvariadic-macros just above the one >>> that you modify. I think you should update all of them to just test >>> for Wvariadic-macros. >>> >>> Once you do that, I hope Joseph will approve it quickly, it seems an >>> obvious fix to me for consistency with Wlong-long and to allow people >>> to use this warning without enabling Wpedantic (also, it will enable >>> the warning with Wtraditional as intended, which is currently broken). >>> >> Thanks, I modified the patch to remove Wpedantic check and added a new >> test-case. >> For changes to libcpp, do I need to run the entire test-suite or only runinng >> libcpp tests (RUNTESTFLAGS=cpp.exp) is fine ? >> I ran libcpp tests, and there appeared to be no failures. >> >> [libcpp] >> * macro.c (parse_params): Remove check for Wpedantic for variadic macros. >> >> [gcc/c-family] >> * c.opt (-Wvariadic-macros): Init(-1) instead of Init(1). >> * c-opts.c (c_common_handle_option): Add case OPT_Wvariadic_macros. >> (sanitize_cpp_opts): Check condition for pedantic or >> warn_traditional. >> >> [gcc/testsuite/gcc.dg/cpp] >> * Wvariadic-5.c: New test-case. >> >> Thanks and Regards, >> Prathamesh >> >>> Cheers, >>> >>> Manuel.