https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65158

            Bug ID: 65158
           Summary: printf attribute error reporting assumes single-byte
                    characters
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: tromey at gcc dot gnu.org

printf attribute error reporting assumes that the format character
is a single byte:

        warning_at (format_string_loc, OPT_Wformat_,
            "unknown conversion type character %qc in format",
            format_char);

However I don't think this is necessarily so.
A test case would be a printf string with "%" followed by some
multi-byte UTF-8 character.

format_char is initialized:

      format_char = *format_chars;

I suppose this could be changed to get all the bytes of a multi-byte
character; then updating %c handling to follow.

Reply via email to