Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Oct 2007 16:54:52 +0800
From:      "Rong-en Fan" <grafan@gmail.com>
To:        "Andrey Chernov" <ache@nagual.pp.ru>, "Scott Long" <scottl@samsco.org>,  "John Baldwin" <jhb@freebsd.org>, src-committers@freebsd.org,  d@delphij.net, "Robert Watson" <rwatson@freebsd.org>,  imp@freebsd.org, cvs-src@freebsd.org
Subject:   Re: cvs commit: src/lib/libc/locale utf8.c
Message-ID:  <6eb82e0710280154h68393dcag4e9ba4ac4c219065@mail.gmail.com>
In-Reply-To: <20071027092213.GA53271@nagual.pp.ru>
References:  <200710150951.l9F9pUm7026506@repoman.freebsd.org> <20071025233536.B99770@fledge.watson.org> <472120E8.90504@samsco.org> <200710261144.34645.jhb@freebsd.org> <472217C2.8020800@samsco.org> <6eb82e0710260954m73b3f17bq2c72a4cdb597640e@mail.gmail.com> <6eb82e0710270130o5557efew95f62aef8035d209@mail.gmail.com> <20071027092213.GA53271@nagual.pp.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On 10/27/07, Andrey Chernov <ache@nagual.pp.ru> wrote:
> On Sat, Oct 27, 2007 at 04:30:30PM +0800, Rong-en Fan wrote:
> > On 10/27/07, Rong-en Fan <grafan@gmail.com> wrote:
> > [...]
> > > I admit that I really did a very bad abi damage on libc. I have been
> > > working on it and
> > > removing those inline __* functions in _ctype.h help. It can be upgraded and
> > > also downgraded without problems. Without those inline stuffs,
> > > buildworld+installworld
> > > time difference is less than 60 seconds, which looks good. I will post the
> > > patch after some more tests.
> > >
> > > As for RELENG_7 and HEAD, I'm not 100% sure whether we should restore
> > > the compatibility as 1) 7.0 is not released yet, 2) we don't promise
> > > anything in
> > > HEAD branch. However, if most people think get rid of inline stuffs and
> > > have libc compatibility are nice, then we do the same for those two branches.
> >
> > After some tests, the patch is at
> >
> > http://people.freebsd.org/~rafan/ctype-abi-fix-6.diff
> >
> > Let me describe this patch in more details. Fist, we actually
> > compile those inline functions as real functions in
> > lib/libc/locale/nomacro.c if _EXTERNAL_CTYPE_INLINES_ is defined.
> > I make 4 inline functions that use the __mb_sb_limit symbol,
> > which break the compatibility, always compiled as real functions.
> > I also considered that moving those inlined function in another
> > C file, but I think it would make the source codes diverse
> > among 6 and 7/8.
>
> As a small improvement, we can skip __isctype() from this list too and
> just hardcode 128 there, i.e.: return (_c < 0 || _c >= 128) ...
> since default locale never define anything above 128.

Thank you. A new patch is available at

http://people.freebsd.org/~rafan/ctype-abi-fix-6-try2.diff

Regards,
Rong-En Fan



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