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

            Bug ID: 104876
           Summary: untranslated strings in diagnostic about failed mapper
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Keywords: diagnostic
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: roland.illig at gmx dot de
  Target Milestone: ---

cp/mapper-client.cc says:

---snip---
...
  errmsg = "opening";
...
  errmsg = "reading";
...
  if (errmsg)
    error_at (loc, line ? G_("failed %s mapper %qs line %u")
              : G_("failed %s mapper %qs"), errmsg, name.c_str (), line);
---snap---

This means that the German translation includes English words, and as the
German translator, I cannot do anything about it.

To fix this, I suggest to define a local enum for the error causes and then for
each non-zero error cause use a proper complete sentence as the message.

enum cause {
  OERR_NONE,
  OERR_OPENING,
  OERR_READING
};

Reply via email to