From owner-cvs-src@FreeBSD.ORG Sat Oct 27 13:09:44 2007 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1DBB316A417; Sat, 27 Oct 2007 13:09:44 +0000 (UTC) (envelope-from deischen@freebsd.org) Received: from mail.netplex.net (mail.netplex.net [204.213.176.10]) by mx1.freebsd.org (Postfix) with ESMTP id AF9DF13C465; Sat, 27 Oct 2007 13:09:43 +0000 (UTC) (envelope-from deischen@freebsd.org) Received: from sea.ntplx.net (sea.ntplx.net [204.213.176.11]) by mail.netplex.net (8.14.1/8.14.1/NETPLEX) with ESMTP id l9RD9WPD008436; Sat, 27 Oct 2007 09:09:32 -0400 (EDT) X-Virus-Scanned: by AMaViS and Clam AntiVirus (mail.netplex.net) X-Greylist: Message whitelisted by DRAC access database, not delayed by milter-greylist-3.0 (mail.netplex.net [204.213.176.10]); Sat, 27 Oct 2007 09:09:33 -0400 (EDT) Date: Sat, 27 Oct 2007 09:09:32 -0400 (EDT) From: Daniel Eischen X-X-Sender: eischen@sea.ntplx.net To: Rong-en Fan In-Reply-To: <6eb82e0710270130o5557efew95f62aef8035d209@mail.gmail.com> Message-ID: 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> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Scott Long , src-committers@freebsd.org, d@delphij.net, John Baldwin , Andrey Chernov , Robert Watson , cvs-src@freebsd.org, imp@freebsd.org Subject: Re: cvs commit: src/lib/libc/locale utf8.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Daniel Eischen List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 27 Oct 2007 13:09:44 -0000 On Sat, 27 Oct 2007, Rong-en Fan wrote: > On 10/27/07, Rong-en Fan 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 Why do we need to expose __mb_sb_limit at all even in 7.x or HEAD? It doesn't seem like it can be anything greater than _CACHED_RUNES, so why don't we always just ensure that __runetype, __maplower, etc are all sized appropriately. In the error case (_c >= __mb_sb_limit), we just return 0 anyways, so if unused __runetype[] were initialized to 0 in the implementation for unused entries, this __sbmaskrune() could become: __sbmaskrune(__ct_rune_t _c, unsigned long _f) { return (_c < 0 || _c >= _CACHED_RUNES) ? 0 : _CurrentRuneLocale->__runetype[_c] & _f; } -- DE