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

            Bug ID: 85267
           Summary: Untranslatable strings in verify_variant_match
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: roland.illig at gmx dot de
  Target Milestone: ---

From tree.c:

#define verify_variant_match(flag)                                          \
  do {                                                                      \
    if (flag (tv) != flag (t))                                              \
      {                                                                     \
        error ("type variant differs by " #flag ".");                       \
        debug_tree (tv);                                                    \
        return false;                                                       \
      }                                                                     \
  } while (false)

Since GNU Gettext does not expand macro parameters, it extracts the following
message for translation:

msgid "type variant differs by "

This message ID is useless because it never occurs in practice.

Proper fix: Never use error() with macro parameters.

Reply via email to