This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Patch] c++/7765
- From: Wolfgang Bangerth <wolfgang dot bangerth at iwr dot uni-heidelberg dot de>
- To: gcc-bugs at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org, gcc-gnats at gcc dot gnu dot org
- Date: Mon, 28 Oct 2002 16:43:22 +0100 (MET)
- Subject: [Patch] c++/7765
Hi,
yesterday I dug a little deeper into this error, which is new in 3.2 and
present CVS. I believe that this is the reason: in the french translation
gcc/po/fr.po, we find
> #: cp/call.c:2842
> msgid "%s for `%T %s %T' operator"
> msgstr "%s pour l'operateur %t [%T]"A
>
> #: cp/call.c:2845
> msgid "%s for `%s %T' operator"
> msgstr "%s pour l'operateur %t [%T]"A
This ultimately leads to the error because %t is not recognized by
cp/error.c(cp_printer). I confirmed that the appended patch fixes this. I
have no idea whom to contact for i18n matters, so can please someone take
care of the necessary steps?
Since this problem did not occur with at least 2.95, it would be nice if
it could be fixed for 3.2.1. Present CVS will also need this fix.
Regards
Wolfgang
-------------------------------------------------------------------------
Wolfgang Bangerth email: bangerth@ticam.utexas.edu
www: http://www.ticam.utexas.edu/~bangerth/
Index: po/fr.po
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/po/fr.po,v
retrieving revision 1.3.2.2
diff -c -r1.3.2.2 fr.po
*** po/fr.po 10 May 2002 14:52:05 -0000 1.3.2.2
--- po/fr.po 28 Oct 2002 15:30:16 -0000
***************
*** 13122,13132 ****
#: cp/call.c:2842
msgid "%s for `%T %s %T' operator"
! msgstr "%s pour l'opérateur «%t [%T]»"
#: cp/call.c:2845
msgid "%s for `%s %T' operator"
! msgstr "%s pour l'opérateur «%t [%T]»"
#: cp/call.c:2937
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
--- 13122,13132 ----
#: cp/call.c:2842
msgid "%s for `%T %s %T' operator"
! msgstr "%s pour l'opérateur «%T [%T]»"
#: cp/call.c:2845
msgid "%s for `%s %T' operator"
! msgstr "%s pour l'opérateur «%T [%T]»"
#: cp/call.c:2937
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
Index: diagnostic.c
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/diagnostic.c,v
retrieving revision 1.78
diff -c -r1.78 diagnostic.c
*** diagnostic.c 23 Jan 2002 19:34:08 -0000 1.78
--- diagnostic.c 28 Oct 2002 15:30:16 -0000
***************
*** 733,739 ****
if (!buffer->format_decoder || !(*buffer->format_decoder) (buffer))
{
/* Hmmm. The front-end failed to install a format translator
! but called us with an unrecognized format. Sorry. */
abort ();
}
}
--- 733,741 ----
if (!buffer->format_decoder || !(*buffer->format_decoder) (buffer))
{
/* Hmmm. The front-end failed to install a format translator
! or called us with an unrecognized format. (Maybe also just
! the translated string contained an invalid format.)
! Sorry. */
abort ();
}
}