Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Oct 1995 13:25:31 +0300 (MSK)
From:      =?KOI8-R?Q?=E1=CE=C4=D2=C5=CA_=FE=C5=D2=CE=CF=D7?= (aka Andrey A. Chernov, Black Mage) <ache@astral.msk.su>
To:        Poul-Henning Kamp <phk@critter.tfs.com>
Cc:        bde@zeta.org.au, hackers@freefall.freebsd.org, j@uriah.heep.sax.de, kaleb@x.org
Subject:   Re: A couple problems in FreeBSD 2.1.0-950922-SNAP
Message-ID:  <nZRCZWmu_J@ache.dialup.demos.ru>
In-Reply-To: <RkNIYWmyUH@ache.dialup.demos.ru>; from =?KOI8-R?Q?=E1=CE=C4=D2=C5=CA_=FE=C5=D2=CE=CF=D7?= at Mon, 16 Oct 1995 12:23:35 %2B0300 (MSK)
References:  <214.813831228@critter.tfs.com> <RkNIYWmyUH@ache.dialup.demos.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
In message <RkNIYWmyUH@ache.dialup.demos.ru>
    =?KOI8-R?Q?=E1=CE=C4=D2=C5=CA_=FE=C5=D2=CE=CF=D7?= writes:

>In message <214.813831228@critter.tfs.com> Poul-Henning Kamp writes:

>>> >Yes, bloat is added even when ENABLE_STARTUP_LOCALE isn't set.  Bloat is
>>> >added even when no ctype function is called (this is normal for most
>>> >programs in /bin and /sbin - grep shows "ctype.h" in only 25 out of 80
>>> >programs in /usr/src/[s]bin.
>>> 
>>> It isn't accurate results. Many libc functions calls ctype
>>> indirecly, i.e. strtol, atoi, etc. You additionly need
>>> to grep ctype through libc and then grep function you got
>>> through bin/sbin. I suspect that 100% of programs use ctype
>>> for accurate results.

>>Andrey, you have to realize that Bruce reported precise numbers, whereas
>>you just "suspect".  Please prove you point, and provide hard numbers.

>Well, here more accurate results.

>I build/install special crt0.o version which not calls reduced_setlocale()
>bloat.
>Then I rebuild bin/sbin. Then I use following csh script to find ones
>which not use ctype at all:

>foreach i (*)
>nm $i/obj/$i | grep -l -q Locale || echo $i >> /tmp/result
>end

>running it on bin:
>100% use ctype!!!

>running it on sbin:
>100% use ctype!!!

>So my suspection was right.

It means that bloat reason is reduced_setlocale body itself.
Purposes of reduced_setlocale is making _right_ ctype.
Having right ctype is essential. Even Kaleb suggest to have
right one (but right for 8859-1 only and broken for others
and POSIX).
My hack makes it right for any LANG value including 8859-1
and not violates POSIX.


-- 
Andrey A. Chernov        : And I rest so composedly,  /Now, in my bed,
ache@astral.msk.su       : That any beholder  /Might fancy me dead -
FidoNet: 2:5020/230.3    : Might start at beholding me,  /Thinking me dead.
RELCOM Team,FreeBSD Team :         E.A.Poe         From "For Annie" 1849



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?nZRCZWmu_J>