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:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; q=dns; s= default; b=EbQtbHbTFqhLLKQTKSPZOkeOMv+GSR7nnyZqd55pu+Rgpgz0bxiPO V7wv0878yLBOBBJ77YNchZic4mWnPG6A3M5ARGnM2W2QAY376pJC5FH0MIBSjx6/ Qe0ypUJBAD4exwjUdvAj5PnnEexjzboSKWGIA7sznwlSt0XFV5Zjek= 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:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; s=default; bh=XaqwSaRzWVudX4nzvRoC0C5x4W0=; b=h/CDAzK11XhbxOmoPbe9FcNBbnp0 dYLPhOI6VtUj4vcE2ovNKOKGQ9WjC1Ftk5Y+5hjhCOKYca77wK/isYqxPagqSrkC CmjXnYIBfI/etzbNxx8SfndJ+6pvJ+xgGKIkG4AXdveOD7TAXoL2hdC9kvkoPb57 VT1CPnzcEXo9agU= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.1 Date: Mon, 13 May 2013 17:36:51 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: mktime loop Message-ID: <20130513153651.GD5045@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <5244063b734b165baf34bdebaff0aca5 AT denis-excoffier DOT org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <5244063b734b165baf34bdebaff0aca5@denis-excoffier.org> User-Agent: Mutt/1.5.21 (2010-09-15) On May 13 09:08, Denis Excoffier wrote: > Hello, > > The following program (see below) is working properly under plain > 1.7.18. With all the snapshots afterwards (including > the current one 20130508), it fails after day=19, looping forever > (it seems). I use XP. > > Regards, > > Denis Excoffier. > > % cat foo.c > #include > #include > > int > main () > { > int day; > // date --date='@2147483647' +%Y-%m-%d gives 2038-01-19 > for ( day = 1 ; day <= 31 ; ++day ) { > struct tm tm; > time_t now; > tm.tm_year = 2038 - 1900; > tm.tm_mon = 1 - 1; > tm.tm_mday = day; // 19, 20 > tm.tm_hour = 0; > tm.tm_min = 0; > tm.tm_sec = 0; > now = mktime (&tm); > fprintf (stderr, "day=%d\n", day); > }; > return 0; > } Thanks for the testcase. This looks like the new BSD code I added lately assumes that the datatype time_t is 8 bytes, not 4 byte as on 32 bit Cygwin. That's just a hunch I take from the fact that your testcase works fine on 64 bit Cygwin and only hangs on 32 bit Cygwin. Oh well. I'll investigate further... Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat -- 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