From owner-freebsd-current@FreeBSD.ORG Thu May 10 11:41:20 2012 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 94E691065688; Thu, 10 May 2012 11:41:20 +0000 (UTC) (envelope-from erik@cederstrand.dk) Received: from csmtp2.one.com (csmtp2.one.com [91.198.169.22]) by mx1.freebsd.org (Postfix) with ESMTP id 516848FC12; Thu, 10 May 2012 11:41:20 +0000 (UTC) Received: from [192.168.1.15] (unknown [217.157.7.221]) by csmtp2.one.com (Postfix) with ESMTPA id 18AFB303CE30; Thu, 10 May 2012 11:41:18 +0000 (UTC) Mime-Version: 1.0 (Apple Message framework v1257) Content-Type: text/plain; charset=iso-8859-1 From: Erik Cederstrand In-Reply-To: <4FAB9289.8060808@FreeBSD.org> Date: Thu, 10 May 2012 13:41:17 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <59B6B059-ED46-4C1B-B72D-D6DFA906BFFB@cederstrand.dk> References: <20120510.180247.93202495593231609.okuno.kohji@jp.panasonic.com> <4FAB9289.8060808@FreeBSD.org> To: David Chisnall X-Mailer: Apple Mail (2.1257) Cc: freebsd-current FreeBSD , Kohji Okuno Subject: Re: The current libc/locale/toupper.c is mistaken X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 May 2012 11:41:20 -0000 Den 10/05/2012 kl. 12.03 skrev Dimitry Andric: > On 2012-05-10 11:02, Kohji Okuno wrote: >> I think that libc/locale/toupper.c is mistaken. >> Could you check it? >>=20 >> @@ -51,7 +51,7 @@ ___toupper_l(c, l) >> { >> size_t lim; >> FIX_LOCALE(l); >> - _RuneRange *rr =3D &XLOCALE_CTYPE(l)->runes->__maplower_ext; >> + _RuneRange *rr =3D &XLOCALE_CTYPE(l)->runes->__mapupper_ext; >> _RuneEntry *base, *re; >>=20 >> if (c < 0 || c =3D=3D EOF) >=20 > Yes, this definitely looks like a copy/paste error, introduced here: >=20 > = http://svnweb.freebsd.org/base/head/lib/libc/locale/toupper.c?r1=3D165903&= r2=3D227753 >=20 > I'll commit the fix tonight (CEST), if David isn't faster than me. :) I'm left wondering how this was not caught by the libc++ test suite. The = current toupper.c shouldn't pass = http://llvm.org/svn/llvm-project/libcxx/trunk/test/localization/locales/lo= cale.convenience/conversions/conversions.character/toupper.pass.cpp Thanks, Erik=