From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H2,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 21520 invoked from network); 6 Sep 2022 21:13:44 -0000 Received: from second.openwall.net (193.110.157.125) by inbox.vuxu.org with ESMTPUTF8; 6 Sep 2022 21:13:44 -0000 Received: (qmail 22036 invoked by uid 550); 6 Sep 2022 21:13:39 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 22004 invoked from network); 6 Sep 2022 21:13:39 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:to:subject:from:content-language :user-agent:mime-version:date:message-id:from:to:cc:subject:date; bh=XXFn/6dLCH/vNrelWq9QJujxPq+gE67srVhjSsVTzOs=; b=OFR4Q9BhfuuJiA3XbdiHqBbYJOxiS2qX1iL5RqpY7OyHi5xNXBYRQ4CIR/At3aWySm VmeetYJRnBJ6l9SixmvdwOTpqabPOE3Y3oXamWOhLR2qlzahCtn5eMgEh5hb61gTDAOs IZ9g+bRl4o2USDRAlNJS8+1MOOVMh9iz+C14PALjqySj4VCAfYCPMQrnlDps2WCVtYj0 o4lRTiNPyKjuisFcllXqlwdwn5t95cTsuclXDCFLjuWQIjxSudaqJXBuci6pLiltrFg8 sC/GHsMTw7Wy9lbY35k53lXjw45JjwigFrOVRsbWN5VpcK/DicebS7lqqg7MIXe7Jx6u x/Pg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:to:subject:from:content-language :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date; bh=XXFn/6dLCH/vNrelWq9QJujxPq+gE67srVhjSsVTzOs=; b=wGpgsISgW03F1EgWdokHLHQQc3XN6vTbsjtc94rB0RLfwN75N6r80fXY+g8z/rdB+H bjmUeWwv7RDRvfkFINFmqJcJuGkbd4KYTDA8RYr16Wb/VHf9ieu591tWy9+mAbWES0fJ +iIuaRDjx2wY0e8b91KtOo5UXdPhD0mxib3tUvF2eR/WRjM9U/S1Ic7cySwM91gSwdF2 fPebzpWwZU/AocYWSgKjZ8+rU8YmQjnib4l0zT7c84Vh2g4GNhFXBrPG5ZcBtPJh8+e1 m4Rdpoo6wdDf79iZZJB7og2ZXTuSTpqjkkFA7EQs2doULB9/OqsO3bEhik7FM5Xh5uSV fIZw== X-Gm-Message-State: ACgBeo0oWIygl8eys/4+2GfzOJvKJqzJxk2GzXkaNxJ0Bx/ls7g03cRE pxbqCrot3kv+ze6t+YlVdPJuCxQQ9FWysA== X-Google-Smtp-Source: AA6agR5VNqpBUOFsZLfiHzkWxCmzSqp/EdsCS2G/OJUYK2fFWselXEdEnmLJz7MwDF27rM8HYKQ2bA== X-Received: by 2002:a05:600c:3ac9:b0:3a5:f114:1f8 with SMTP id d9-20020a05600c3ac900b003a5f11401f8mr172266wms.204.1662498807803; Tue, 06 Sep 2022 14:13:27 -0700 (PDT) Message-ID: Date: Tue, 6 Sep 2022 23:13:26 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.1 Content-Language: en-US From: Gabriel Ravier To: musl@lists.openwall.com Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: [musl] fcvt(99.99, 1, ...) appears to be broken because of varying rounding fcvt(99.99, 1, &decpt, &sign) results in musl returning "9999". I am pretty sure the standard ensures that regardless of how the rounding is done, only "999" and "1000" are supposed to be valid results for fcvt in this situation. I'd like to add that this seems to occur because of a difference in rounding that occurs between the calls to sprintf in fcvt and ecvt, with fcvt's call of it returning "100.0" and ecvt's call returning "9.999e+01" (i.e. fcvt asked ecvt for 4 significant digits assuming it would return "1000" but it ended up getting a contradicting result from its call to printf)