From owner-freebsd-standards@FreeBSD.ORG Wed Dec 24 19:16:10 2014 Return-Path: Delivered-To: freebsd-standards@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5A6E89D7 for ; Wed, 24 Dec 2014 19:16:10 +0000 (UTC) Received: from nm17-vm1.bullet.mail.bf1.yahoo.com (nm17-vm1.bullet.mail.bf1.yahoo.com [98.139.213.55]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F1ADA64C56 for ; Wed, 24 Dec 2014 19:16:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1419448568; bh=KCnToET7JWG5S/pQhwiXfq+OX0DxAR71v/t7rNx9q2s=; h=Date:From:To:Subject:From:Subject; b=lPp2XZFSJJUlD/lFcl7YcxQlwll4haqeJFVlsLFjJOcoVjEp3I2D/q/Pp37FZYN0oeEqwci3IT83Z3t039F6ldHQB6tb83d5oF25COkGie3bRryHlWx4kOx/rnBxVKSBJLKHBsM6QTom9jmgIygpD3Ycc5Cwf1BHbIfuovZt4GYPR/HKZplq1WvDyCYp5W/gn+7a7DQ6FyxGGZ83frm1Lql0lcMT4M94WExn5xz48dZIQ59a9mVthNixpmdR7UZKWV/MttAg1xA+V2T/UKKIsBdSZCll9ku4e9s6zizRzqwdqCz4pDBRpQqpqW/d5I6ndqLxqHH/zJQxeD3MT5Oggg== DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s2048; d=yahoo.com; b=csU3B8vg8cUluY+vbgffPle2D0LbZzX1DzGjJLpcGQUprst6VdgY1QMrlxJHr1aMlbM0ciLbOcuvMEdBSny948SPGkipq3Pwg9l3WqnbfRE78lseOsuCf5HOSGtLIa0TgCvoa59ITU3ySHtTQFeVs+E9oyav1JYgdLMMnuySUl3hkzvjwq45AC329kL//Tccenkczil0gpNUUDwpGHtTnVXr8AYera5uYvlL4OsvGjJ6ewQktnV0TN+XzfF2Y2Myla31EJa8M9zr6KLSKBMCXy3fdJ85xgkVFGJ84kOsSQHK45HNj+auv1DbxGvkCBkGBpbWBGW0RbrJsGImI+GjuQ==; Received: from [66.196.81.172] by nm17.bullet.mail.bf1.yahoo.com with NNFMP; 24 Dec 2014 19:16:08 -0000 Received: from [98.139.211.207] by tm18.bullet.mail.bf1.yahoo.com with NNFMP; 24 Dec 2014 19:16:08 -0000 Received: from [127.0.0.1] by smtp216.mail.bf1.yahoo.com with NNFMP; 24 Dec 2014 19:16:08 -0000 X-Yahoo-Newman-Id: 434298.58479.bm@smtp216.mail.bf1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: 6Qzo2wQVM1k0iFyIoESswn4Q2uMBdDAlUM7g._NyMgCwUzT yjJ5cKaWMVl2fvLzcO5TND0TcKrHH.4OFxtQMTn5uq0RNhV32yubg4IYzha2 PAZMH5nGfTkYyf8636_PPjjmumSAdQ7KGm4QiFKq85BX92lDJvE7h0iOnl3g Qz0Me6BhYDevQA9zFQ4AyrQueZPjHzntH5lOh1VmJ3ZKLmnP3.zL_9s27_PS F7P7lGzkG51U8jYS1ysmdzR1HA9MEO3scwt2Ubc9Xpp.NDmbefx9QlXYu4BC Vr7Kev4RW8UAeEiYagRqGA3MJeCfrXn7JypLtvyBEnaj6ILxczR7LCcdvoKJ PNA4lMOQAqLXGAd_RhAVX9QzoburVmPM8fuIzzyNkZG4eX8kC3uY__6drU78 UPRzgeoeviEexjtPdHBG_AZnRQAH.ZGxkTgViFwGTvhhrXc.fumTgH5y3UwF mxkVYkc.6rtwrv7Nc4drVPMztpvAJ8yj.txtHkD1Ke2TPoy9z1OJzRltnj47 Oe6XwDvHLHTPTpGoq67AuaIArY77K5jkV X-Yahoo-SMTP: xcjD0guswBAZaPPIbxpWwLcp9Unf Message-ID: <549B1115.8000909@FreeBSD.org> Date: Wed, 24 Dec 2014 14:16:37 -0500 From: Pedro Giffuni User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: freebsd-standards@FreeBSD.org Subject: Does posix say anything about the sign in NaNs ? Content-Type: multipart/mixed; boundary="------------070302050101030406080200" X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Dec 2014 19:16:10 -0000 This is a multi-part message in MIME format. --------------070302050101030406080200 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Hello; I got the attached patch from OpenBSD. It says: ____ Show the sign for NaN as per POSIX; from Elliott Hughes. ok martynas@, millert@, doug@ ____ I can't find a reference in POSIX documentation to support it though. Anyone has a reason why we shouldn't adopt it, or a reference I can quote on the commit log? Regards, Pedro. ps. Merry Christmas to everyone !! --------------070302050101030406080200 Content-Type: text/x-patch; name="stdio-vfprintf-nan.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="stdio-vfprintf-nan.diff" Index: lib/libc/stdio/vfprintf.c =================================================================== --- lib/libc/stdio/vfprintf.c (revision 276188) +++ lib/libc/stdio/vfprintf.c (working copy) @@ -721,10 +721,9 @@ if (signflag) sign = '-'; if (expt == INT_MAX) { /* inf or nan */ - if (*cp == 'N') { + if (*cp == 'N') cp = (ch >= 'a') ? "nan" : "NAN"; - sign = '\0'; - } else + else cp = (ch >= 'a') ? "inf" : "INF"; size = 3; flags &= ~ZEROPAD; Index: lib/libc/stdio/vfwprintf.c =================================================================== --- lib/libc/stdio/vfwprintf.c (revision 276188) +++ lib/libc/stdio/vfwprintf.c (working copy) @@ -788,10 +788,9 @@ if (signflag) sign = '-'; if (expt == INT_MAX) { /* inf or nan */ - if (*cp == 'N') { + if (*cp == 'N') cp = (ch >= 'a') ? L"nan" : L"NAN"; - sign = '\0'; - } else + else cp = (ch >= 'a') ? L"inf" : L"INF"; size = 3; flags &= ~ZEROPAD; --------------070302050101030406080200--