From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 9489C3855599; Fri, 12 May 2023 21:21:16 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9489C3855599 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1683926476; bh=aJq65FeEnNRKdstkqTw8w/gF5pGNmDyVS7O2hDvAdRo=; h=From:To:Subject:Date:In-Reply-To:References:From; b=iSQ/MH/hVUDtOjuTj1nldQwV6FJcQ6eZX1EefrRLlD9/Sz1edOT1C1pDZdQcwBZjv KjZ3zv1z1q2IBrxUjPo82Bwf13SqQg3YmUrwfB9XN0M+le7Hcy91Kps/jKSh/l4y+b f/d+59ohvjbT2SLxXi3YJH4Tnt29RfSoxBWNCYDE= From: "redi at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/109818] std::trunc() requires a hack after building DJGPP Date: Fri, 12 May 2023 21:21:16 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Version: 13.1.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: redi at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D109818 --- Comment #19 from Jonathan Wakely --- (In reply to Jonathan Wakely from comment #15) > A proper fix would be to split up the configure test for USE_C99_MATH_TR1= to > be more fine-grained, so that we use the subset of functions that are > supported, instead of all or nothing. Ugh, the set of functions defined by djgpp's seems really arbitrat= y. exp2 only has the double form, not float or long double. expm1 has double and float forms, not long double. trunc has all three forms. Even within a group like the Gamma functions, lgamma and lgammaf are present (but no lgammal) but none of tgamma, tgammaf and tgammal are present. So there's no clear way to split them up into groups that can be tested together, it ends up just being incredibly djgpp-specific (and we might as = well just manually add #ifndef __DJGPP__ in very specific places).=