Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com Date: Wed, 6 Jun 2001 15:48:03 +0400 From: egor duda X-Mailer: The Bat! (v1.45) Personal Reply-To: egor duda Organization: deo X-Priority: 3 (Normal) Message-ID: <1904612782.20010606154803@logos-m.ru> To: newlib AT sources DOT redhat DOT com CC: cygwin-developers AT cygwin DOT com Subject: Re: isspace() & i18n In-reply-To: <20010530125753.B19066@redhat.com> References: <13254193676 DOT 20010530145756 AT logos-m DOT ru> <20010530095254 DOT B17603 AT redhat DOT com> <9265832872 DOT 20010530181156 AT logos-m DOT ru> <20010530125753 DOT B19066 AT redhat DOT com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----------D71781DF39BD1F63" ------------D71781DF39BD1F63 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi! Wednesday, 30 May, 2001 Christopher Faylor cgf AT redhat DOT com wrote: CF> On Thu, May 31, 2001 at 01:29:28AM +0900, Kazuhiro Fujieda wrote: >>>>> On Wed, 30 May 2001 18:11:56 +0400 >>>>> egor duda said: >> >>> i think we should either conform to standard and explicitly convert >>> types or define appropriate strings as unsigned char*, (typedef PATH_STR, >>> perhaps), or define cygwin_is*() as macros that do the conversion, or, >>> as glibc does, expand _ctype to allow indices in range [-128,256]. >> >>The last is preferable. >> >>The ISO C standard specifies is* facilities operate properly on >>all values representable as type `char' and type `unsigned char'. >>It depends on implementation whether char is signed or unsigned. >>The is* facilities should operate on range [-128,256] on the >>implementation where char is singied. CF> I agree. I think that this is the preferable solution. here's the patch that works ok for me. unfortunately, it relies on nonstandard gccism, but at least it always initializes all _ctype_ array elements. when compiled with gcc, it additionally allows [-128, -1] range for indices, too. Egor. mailto:deo AT logos-m DOT ru ICQ 5165414 FidoNet 2:5020/496.19 ------------D71781DF39BD1F63 Content-Type: application/octet-stream; name="newlib-ctype-init.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="newlib-ctype-init.diff" SW5kZXg6IGxpYmMvY3R5cGUvY3R5cGVfLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMv c3JjL25ld2xpYi9saWJjL2N0eXBlL2N0eXBlXy5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEu MS4xCmRpZmYgLXUgLXAgLTIgLXIxLjEuMS4xIGN0eXBlXy5jCi0tLSBjdHlwZV8uYwkyMDAwLzAy LzE3IDE5OjM5OjQ2CTEuMS4xLjEKKysrIGN0eXBlXy5jCTIwMDEvMDYvMDYgMTE6Mzk6MzQKQEAg LTM4LDUgKzM4LDU1IEBAIHN0YXRpYyBjaGFyIHNjY3NpZFtdID0gIkAoIyljdHlwZV8uYwk1LjYK ICNpbmNsdWRlIDxjdHlwZS5oPgogCisjZGVmaW5lIF9DVFlQRV9EQVRBXzBfMTI3IFwKKwlfQywJ X0MsCV9DLAlfQywJX0MsCV9DLAlfQywJX0MsIFwKKwlfQywJX0N8X1MsCV9DfF9TLAlfQ3xfUywJ X0N8X1MsCV9DfF9TLAlfQywJX0MsIFwKKwlfQywJX0MsCV9DLAlfQywJX0MsCV9DLAlfQywJX0Ms IFwKKwlfQywJX0MsCV9DLAlfQywJX0MsCV9DLAlfQywJX0MsIFwKKwlfU3xfQiwJX1AsCV9QLAlf UCwJX1AsCV9QLAlfUCwJX1AsIFwKKwlfUCwJX1AsCV9QLAlfUCwJX1AsCV9QLAlfUCwJX1AsIFwK KwlfTiwJX04sCV9OLAlfTiwJX04sCV9OLAlfTiwJX04sIFwKKwlfTiwJX04sCV9QLAlfUCwJX1As CV9QLAlfUCwJX1AsIFwKKwlfUCwJX1V8X1gsCV9VfF9YLAlfVXxfWCwJX1V8X1gsCV9VfF9YLAlf VXxfWCwJX1UsIFwKKwlfVSwJX1UsCV9VLAlfVSwJX1UsCV9VLAlfVSwJX1UsIFwKKwlfVSwJX1Us CV9VLAlfVSwJX1UsCV9VLAlfVSwJX1UsIFwKKwlfVSwJX1UsCV9VLAlfUCwJX1AsCV9QLAlfUCwJ X1AsIFwKKwlfUCwJX0x8X1gsCV9MfF9YLAlfTHxfWCwJX0x8X1gsCV9MfF9YLAlfTHxfWCwJX0ws IFwKKwlfTCwJX0wsCV9MLAlfTCwJX0wsCV9MLAlfTCwJX0wsIFwKKwlfTCwJX0wsCV9MLAlfTCwJ X0wsCV9MLAlfTCwJX0wsIFwKKwlfTCwJX0wsCV9MLAlfUCwJX1AsCV9QLAlfUCwJX0MKKworI2Rl ZmluZSBfQ1RZUEVfREFUQV8xMjhfMjU2IFwKKwkwLAkwLAkwLAkwLAkwLAkwLAkwLAkwLCBcCisJ MCwJMCwJMCwJMCwJMCwJMCwJMCwJMCwgXAorCTAsCTAsCTAsCTAsCTAsCTAsCTAsCTAsIFwKKwkw LAkwLAkwLAkwLAkwLAkwLAkwLAkwLCBcCisJMCwJMCwJMCwJMCwJMCwJMCwJMCwJMCwgXAorCTAs CTAsCTAsCTAsCTAsCTAsCTAsCTAsIFwKKwkwLAkwLAkwLAkwLAkwLAkwLAkwLAkwLCBcCisJMCwJ MCwJMCwJMCwJMCwJMCwJMCwJMCwgXAorCTAsCTAsCTAsCTAsCTAsCTAsCTAsCTAsIFwKKwkwLAkw LAkwLAkwLAkwLAkwLAkwLAkwLCBcCisJMCwJMCwJMCwJMCwJMCwJMCwJMCwJMCwgXAorCTAsCTAs CTAsCTAsCTAsCTAsCTAsCTAsIFwKKwkwLAkwLAkwLAkwLAkwLAkwLAkwLAkwLCBcCisJMCwJMCwJ MCwJMCwJMCwJMCwJMCwJMCwgXAorCTAsCTAsCTAsCTAsCTAsCTAsCTAsCTAsIFwKKwkwLAkwLAkw LAkwLAkwLAkwLAkwLAkwCisKKyNpZiBkZWZpbmVkKF9fR05VQ19fKQorX0NPTlNUIGNoYXIgX2N0 eXBlX2JbMTI4ICsgMjU2XSA9IHsKKwlfQ1RZUEVfREFUQV8xMjhfMjU2LAorCV9DVFlQRV9EQVRB XzBfMTI3LAorCV9DVFlQRV9EQVRBXzEyOF8yNTYKK307CisKICNpZiBkZWZpbmVkKF9fQ1lHV0lO X18pIHx8IGRlZmluZWQoX19DWUdXSU4zMl9fKQorZXh0ZXJuIF9DT05TVCBjaGFyIF9fZGVjbHNw ZWMoZGxsZXhwb3J0KSBfY3R5cGVfWzEgKyAyNTZdIF9fYXR0cmlidXRlX18gKChhbGlhcyAoIl9j dHlwZV9iKzEyNyIpKSk7CisjZWxzZQorZXh0ZXJuIF9DT05TVCBjaGFyIF9jdHlwZV9bMSArIDI1 Nl0gX19hdHRyaWJ1dGVfXyAoKGFsaWFzICgiX2N0eXBlX2IrMTI3IikpKTsKKyNlbmRpZgorCisj ZWxzZQkvKiAhZGVmaW5lZChfX0dOVUNfXykgKi8KKyNpZiBkZWZpbmVkKF9fQ1lHV0lOX18pIHx8 IGRlZmluZWQoX19DWUdXSU4zMl9fKQogX0NPTlNUIGNoYXIgX19kZWNsc3BlYyhkbGxleHBvcnQp IF9jdHlwZV9bMSArIDI1Nl0gPSB7CiAjZWxzZQpAQCAtNDQsMTkgKzk0LDYgQEAgX0NPTlNUIGNo YXIgX2N0eXBlX1sxICsgMjU2XSA9IHsKICNlbmRpZgogCTAsCi0JX0MsCV9DLAlfQywJX0MsCV9D LAlfQywJX0MsCV9DLAotCV9DLAlfQ3xfUywJX0N8X1MsCV9DfF9TLAlfQ3xfUywJX0N8X1MsCV9D LAlfQywKLQlfQywJX0MsCV9DLAlfQywJX0MsCV9DLAlfQywJX0MsCi0JX0MsCV9DLAlfQywJX0Ms CV9DLAlfQywJX0MsCV9DLAotCV9TfF9CLAlfUCwJX1AsCV9QLAlfUCwJX1AsCV9QLAlfUCwKLQlf UCwJX1AsCV9QLAlfUCwJX1AsCV9QLAlfUCwJX1AsCi0JX04sCV9OLAlfTiwJX04sCV9OLAlfTiwJ X04sCV9OLAotCV9OLAlfTiwJX1AsCV9QLAlfUCwJX1AsCV9QLAlfUCwKLQlfUCwJX1V8X1gsCV9V fF9YLAlfVXxfWCwJX1V8X1gsCV9VfF9YLAlfVXxfWCwJX1UsCi0JX1UsCV9VLAlfVSwJX1UsCV9V LAlfVSwJX1UsCV9VLAotCV9VLAlfVSwJX1UsCV9VLAlfVSwJX1UsCV9VLAlfVSwKLQlfVSwJX1Us CV9VLAlfUCwJX1AsCV9QLAlfUCwJX1AsCi0JX1AsCV9MfF9YLAlfTHxfWCwJX0x8X1gsCV9MfF9Y LAlfTHxfWCwJX0x8X1gsCV9MLAotCV9MLAlfTCwJX0wsCV9MLAlfTCwJX0wsCV9MLAlfTCwKLQlf TCwJX0wsCV9MLAlfTCwJX0wsCV9MLAlfTCwJX0wsCi0JX0wsCV9MLAlfTCwJX1AsCV9QLAlfUCwJ X1AsCV9DCisJX0NUWVBFX0RBVEFfMF8xMjcsCisJX0NUWVBFX0RBVEFfMTI4XzI1NgogfTsKKyNl bmRpZgo= ------------D71781DF39BD1F63 Content-Type: application/octet-stream; name="newlib-ctype-init.ChangeLog" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="newlib-ctype-init.ChangeLog" MjAwMS0wNi0wNiAgRWdvciBEdWRhICA8ZGVvQGxvZ29zLW0ucnU+CgoJKiBsaWJjL2N0eXBlL2N0 eXBlXy5jOiBJbml0aWFsaXplIGFsbCBfY3R5cGVfIGFycmF5IGVsZW1lbnRzLgoJV2hlbiBjb21w aWxlZCB3aXRoIGdjYywgbWFrZSBfY3R5cGVfWy0xMjhdIC4uLiBfY3R5cGVbLTFdIHJlZmVyCglp bml0aWFsaXplZCBtZW1vcnkgcmVnaW9uLgo= ------------D71781DF39BD1F63--