delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2016/05/26/02:54:45

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:message-id:from:to:subject:in-reply-to
:references:mime-version:content-type:content-transfer-encoding;
q=dns; s=default; b=iCb99mMOdvriNchA2iqbj+g579yuFXGejlmljssnsKW
prj6d2fJgfUZzoyOM2Ep0R4aYLBk93oqXK/MaaqU9tQlpG2iB0cBlxClDPZcN8py
P4qW0EjZiX3zzAXPKepzRULSE4drZ88lRHDnheTeHOtqBriIsszSmW9I3CMbmCGs
=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:message-id:from:to:subject:in-reply-to
:references:mime-version:content-type:content-transfer-encoding;
s=default; bh=VLNmbe/YoPfoelvk/iVzHQXy/CU=; b=XHttirYPm4FQG70XJ
li4py5ij3uPEZDAUtcgorVkodvtlRbWg+q64LcdleOrdQt5B5CvsyWkgSnzgy0sl
SuKY+wna2euORFBCDZnaw++CpVBKYALAoqNMREdlTC0ErEba2dy0uN2tRoHulqkZ
G1BUb/7wJlWVaIbM4d1QpJYX8Q=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=H*i:sk:2eddaaf, H*MI:sk:2eddaaf, H*f:sk:2eddaaf, Hx-languages-length:1639
X-HELO: mgwym04.jp.fujitsu.com
X-SecurityPolicyCheck: OK by SHieldMailChecker v2.2.3
X-SHieldMailCheckerPolicyVersion: FJ-ISEC-20140219-2
Date: Thu, 26 May 2016 15:54:00 +0900
Message-ID: <o8xh9dltilz.wl-koba@jp.fujitsu.com>
From: KOBAYASHI Shinji <koba AT jp DOT fujitsu DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: Invalid tm_zone from localtime() when TZ is not set
In-Reply-To: <2eddaaf6-4e37-cd9b-aa9d-8a87234d0cf9@t-online.de> <20160525084430.GA17601@calimero.vinschen.de>
References: <o8xeg8x7e2r DOT wl-koba AT jp DOT fujitsu DOT com> <932D033F-9DA4-4901-9158-328AA929FEC8 AT etr-usa DOT com> <o8x8tz573zs DOT wl-koba AT jp DOT fujitsu DOT com> <CAEhDDbA-ATpAtVggR7cfqn58AHw0sPK_Y3mNSJ8UO29sg2ZpuA AT mail DOT gmail DOT com> <o8x37pd6nlm DOT wl-koba AT jp DOT fujitsu DOT com> <o8xposa6fcl DOT wl-koba AT jp DOT fujitsu DOT com> <20160525084430 DOT GA17601 AT calimero DOT vinschen DOT de> <2eddaaf6-4e37-cd9b-aa9d-8a87234d0cf9 AT t-online DOT de>
User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL/10.8 EasyPG/1.0.0 Emacs/24.5 (x86_64-unknown-cygwin) MULE/6.0 (HANACHIRUSATO)
MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue")
X-TM-AS-MML: disable
X-IsSubscribed: yes
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id u4Q6sfMP004587

On Wed, 25 May 2016 22:02:50 +0200, Hans-Bernhard Bröker wrote:
> On May 25 11:28, KOBAYASHI Shinji wrote:
>> The intention of the following code in tzsetwall() should be to pick
>> up UPPERCASE letters "in ASCII range":
> Are you sure you're not mixing ASCII with '8-bit character' range there?

I'm not sure if non-ASCII 8-bit characters are allowed as TZ
names. I just guessed the intention from the fact isupper() is used,
and from the description of isupper() man page:

- isupper is a macro which classifies ASCII integer values by table
  lookup.
- It is defined only when isascii(c) is true or c is EOF.

However, the implementation of isupper() seems to work for 8-bit
characters even if isascii() is false. Does the man page need some
changes?

> A proper solution may have to be more like this:
>     int mapped = wctob(*src);
>     /* this call is safe now because of how wctob() works: */
>     if (isupper(mapped)) {
>        *dst++ = (unsigned char)mapped;
>     }

Thank you for pointing out wctob(). I'm in favor of fixing this way.

On Wed, 25 May 2016 10:44:30 +0200, Corinna Vinschen wrote:
> However, testing this with GLibc it turns out that GLibc's towlower does not
> transform the character but returns 0xff21.  Can anybody explain to me why?  

It seems that it depends on locale. The man page (on Linux) says:

  The behavior of towlower() depends on the LC_CTYPE category of the
  current locale.

I observed that it returns 0xff41 when LANG=ja_JP.UTF-8, and 0xff21
when LANG=C.

Cygwin's implementation (and man page) does not seem to depend on
locale.

Regards,

KOBAYASHI Shinji.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019