[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: lsb-runtime-test 1.1.6-1



Stew,
This is a bug in glibc which it appears they do not intend
to fix (the error message put out by localedef is erroneous
since ISO 4217 includes the deutschmark and other european currency symbols).
Glibc takes the view that these currencies are 
now obsoleted by the Euro and no applications should build
locales that use them.Hence Glibc no longer recognizes these
symbols, even though there might be applications such as the
test suites that would want to continue using them.

I attach a patch to glibc below.

>Description:
glibc/locale/iso-4217.def version 1.13

This file is a misinterpretation of the requirements of POSIX for the
int_currency_symbol.  

The Austin group spec says:

"The international currency symbol. The operand shall be a four-character
string, with the first three characters containing the alphabetic
international currency symbol in accordance with those specified in the
ISO 4217 standard. The fourth character shall be the character used to
separate the international currency symbol from the monetary quantity."


This can take the value of any currency symbol
defined in ISO 4217 -- there is no requirement that this be "valid
for current cash transactions" .  I suspect the data in this file
has been drawn from Table 1 of ISO 4217 and has neglected Tables 2 and
Table 3 which are important tables.  

I obtained a copy of ISO 4217:2001.
This includes three tables, table A-1 is the Currency and funds code
list, table A-2 is for Funds code registered with a maintenance agency,
and table A-3 lists codes for historic demoninations of currencies,

Table A-1 contains the european countries who have adopted
the Euro, together with the Euro and their other pre-Euro currency
and a note pointing to a timetable when the currency will be withdrawn.
This is not a withdrawal of the currency symbol in the ISO standard.
I would anticipate that a future revision of 4217 will
migrate the DEM, FRF etc to Table A-3.

Implementations that are disallowing currency symbols now obsoleted
by the Euro are doing so in error .  The DEM and FRF symbols
are listed in 4217:2001.

I anticipate that the current European currencies presently
in Table 1 in ISO 4217:2001 will migrate to table 3.
Limiting this to "valid" currencies as in what is valid for cash
transactions does not allow for historical processing applications nor the
fact that the central banks plan to continue accepting certain currencies
even though they are not the valid cash for a particular currency.


>How-To-Repeat:
	Try to use a currency symbol defined by ISO 4217 that
    is not in the iso-4217.def file version 1.1.3
>Fix:
    Reinstate the locales obsoleted by the Euro phaseover

 DEFINE_INT_CURR("ADP ")                /* Andorran Peseta obsoleted by EURO 28.2.2002  */
 DEFINE_INT_CURR("ATS ")                /* Austrian Schilling  */
 DEFINE_INT_CURR("BEF ")                /* Belgian Franc obsoleted by EURO 28.2.2002  */
 DEFINE_INT_CURR("DEM ")                /* German Mark obsoleted by EURO 28.2.2002  *
 DEFINE_INT_CURR("ESP ")                /* Spanish Peseta obsoleted by EURO 28.2.2002  */
 DEFINE_INT_CURR("FIM ")                /* Finnish Markka obsoleted by EURO 28.2.2002  */
 DEFINE_INT_CURR("FRF ")                /* French Franc obsoleted by EURO 28.2.2002  */
 DEFINE_INT_CURR("GRD ")                /* Greek Drachma obsoleted by EURO 28.2.2002  */
 DEFINE_INT_CURR("IEP ")                /* Irish Pound obsoleted by EURO 28.2.2002  */
 DEFINE_INT_CURR("ITL ")                /* Italian Lira obsoleted by EURO 28.2.2002  */
DEFINE_INT_CURR("LUF ")                /* Luxembourg Franc obsoleted by EURO 28.2.2002  */
DEFINE_INT_CURR("PTE ")                /* Portugese Escudo obsoleted by EURO 28.02.2002  */


regards
andrew


On Apr 9,  9:16am in "Re: lsb-runtime-test", Stew Benedict wrote:
> 
> I've noticed in upgrading to the latest glibc: glibc-2.2.5-1mdk, that
> installing the test suites (including 1.1.4, which was previously
> installed fine on a base 8.2 Mandrake install), I get a failure in the
> localdefs build:
> 
> localedef -c -f lang0.ascii -i lang0.src VSX4L0
> localedef  -c -f lang1.ascii -i lang1.src VSX4L1
> LC_MONETARY: value of field `int_curr_symbol' does not correspond to a
> valid name in ISO 4217
> make: *** [VSX4L1] Error 1
> 
> Editing the Makefile and adding --quiet allows the build to finish, but I
> don't know the ramifications yet (just starting the test run now).
> 
> Stew Benedict
> 
> -- 
> MandrakeSoft	
> PPC FAQ: http://www.linux-mandrake.com/en/demos/PPC/FAQ/
> 
> 
> -- 
> To UNSUBSCRIBE, email to lsb-test-request@lists.linuxbase.org
> with subject of "unsubscribe". Trouble? Email listmaster@lists.linuxbase.org
>-- End of excerpt from Stew Benedict



-- 
To UNSUBSCRIBE, email to lsb-test-request@lists.linuxbase.org
with subject of "unsubscribe". Trouble? Email listmaster@lists.linuxbase.org



Reply to: