https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79466
Bug ID: 79466 Summary: strange varargs warnings on superflous paranthesises Product: gcc Version: 5.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: martin at netbsd dot org Target Milestone: --- Created attachment 40719 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40719&action=edit Simple example triggering the warning When compiled with g++ -std=gnu++14 the expression __builtin_va_start ((ap), (fmt)); triggers a strange warning: example.cc:4:37: warning: second parameter of 'va_start' not last named argument [-Wvarargs] __builtin_va_start ((ap), (fmt)); ^ Removing the extra paranthesis makes it work. This does not happen with -std=gnu++11. Sample attached, compile with: g++ -Wall -O2 -std=gnu++14 -c -o example.o example.cc (warning and optimization settings do not make a difference, only std= is important)