As noted by Joseph, I broke "make gcc.pot" in
r14-6057-g12b67d1e13b3cf
by adding an overloaded format API with the format string in a different
position, leading to this failure:
emit_diagnostic_valist used incompatibly as both --keyword=emit_diagnostic_valist:4
--flag=emit_diagnostic_valist:4:gcc-internal-format and --keyword=emit_diagnostic_valist:5
--flag=emit_diagnostic_valist:5:gcc-internal-format
Fix by replacing the overloaded function with one with a different name.
See also
r10-6297-g6c8e584430bc5d for previous fixes for this involving
the same function, or
r5-6946-g40fecdd62f7d29 and
r5-6959-gdb30e21cbff7b9 for older fixes for similar issues.
gcc/analyzer/ChangeLog:
* pending-diagnostic.cc (diagnostic_emission_context::warn):
Update for renaming of emit_diagnostic_valist overload to
emit_diagnostic_valist_meta.
(diagnostic_emission_context::inform): Likewise.
gcc/ChangeLog:
* diagnostic-core.h (emit_diagnostic_valist): Rename overload
to...
(emit_diagnostic_valist_meta): ...this.
* diagnostic.cc (emit_diagnostic_valist): Likewise, to...
(emit_diagnostic_valist_meta): ...this.
Signed-off-by: David Malcolm <dmalcolm@redhat.com>
auto_diagnostic_group d;
va_list ap;
va_start (ap, gmsgid);
- const bool result = emit_diagnostic_valist (DK_WARNING,
- &m_rich_loc, &m_metadata,
- pd.get_controlling_option (),
- gmsgid, &ap);
+ const bool result = emit_diagnostic_valist_meta (DK_WARNING,
+ &m_rich_loc, &m_metadata,
+ pd.get_controlling_option (),
+ gmsgid, &ap);
va_end (ap);
return result;
}
auto_diagnostic_group d;
va_list ap;
va_start (ap, gmsgid);
- emit_diagnostic_valist (DK_NOTE,
- &m_rich_loc, &m_metadata,
- pd.get_controlling_option (),
- gmsgid, &ap);
+ emit_diagnostic_valist_meta (DK_NOTE,
+ &m_rich_loc, &m_metadata,
+ pd.get_controlling_option (),
+ gmsgid, &ap);
va_end (ap);
}
const char *, ...) ATTRIBUTE_GCC_DIAG(4,5);
extern bool emit_diagnostic_valist (diagnostic_t, location_t, int, const char *,
va_list *) ATTRIBUTE_GCC_DIAG (4,0);
-extern bool emit_diagnostic_valist (diagnostic_t,
- rich_location *,
- const diagnostic_metadata *,
- int,
- const char *,
- va_list *) ATTRIBUTE_GCC_DIAG (5,0);
+extern bool emit_diagnostic_valist_meta (diagnostic_t,
+ rich_location *,
+ const diagnostic_metadata *,
+ int,
+ const char *,
+ va_list *) ATTRIBUTE_GCC_DIAG (5,0);
extern bool seen_error (void);
#ifdef BUFSIZ
/* As above, but with rich_location and metadata. */
bool
-emit_diagnostic_valist (diagnostic_t kind,
- rich_location *richloc,
- const diagnostic_metadata *metadata,
- int opt,
- const char *gmsgid, va_list *ap)
+emit_diagnostic_valist_meta (diagnostic_t kind,
+ rich_location *richloc,
+ const diagnostic_metadata *metadata,
+ int opt,
+ const char *gmsgid, va_list *ap)
{
return diagnostic_impl (richloc, metadata, opt, gmsgid, ap, kind);
}