On Sun, 20 Dec 2020, Maciej W. Rozycki wrote:

> On Thu, 17 Dec 2020, Patrick Palka via Gcc-patches wrote:
> 
> > > >libstdc++-v3/ChangeLog:
> > > >
> > > >       * config/abi/pre/gnu.ver: Add new exports.
> > > >       * include/std/charconv (to_chars): Declare the floating-point
> > > >       overloads for float, double and long double.
> > > >       * src/c++17/Makefile.am (sources): Add floating_to_chars.cc.
> > > >       * src/c++17/Makefile.in: Regenerate.
> > > >       * src/c++17/floating_to_chars.cc: New file.
> > > >       (to_chars): Define for float, double and long double.
> > > >       * testsuite/20_util/to_chars/long_double.cc: New test.
> > >
> > > Sorry it took so long to review, this is OK for trunk.
> > >
> > > The patch needs some minor changes to rebase it on the current trunk:
> > > The linker script has additions since you send this patch, so the
> > > context in the patch is wrong and it doesn't apply, and in <charconv>
> > > the first line of context in the patch needs to have 'noexcept' added.
> > > That rebase should be easy though.
> > >
> > > I'll look at adding __float128 support for powerpc64le.
> > 
> > Thanks a lot.  I committed the patch series just now, after rebasing
> > and retesting on x86_64, aarch64 and ppc64le.
> 
>  This breaks with the `vax-netbsdelf' target in GCC compilation:
> 
> .../libstdc++-v3/src/c++17/floating_to_chars.cc:126:38: error: static 
> assertion failed
>   126 |       static_assert(__DBL_MANT_DIG__ == 53);
>       |                                      ^
> make[5]: *** [Makefile:577: floating_to_chars.lo] Error 1
> 
> So what's the fallback/alternative for non-IEEE-754 FP targets?  Shouldn't 
> we call into libc (possibly with a warning attribute) for the formats we 
> don't have explicit handcoded support for?

Sorry about this bootstrap breakage.  For now, we should probably just
disable the entire file/implementation on such targets until a proper
fallback could be implemented.  I posted a patch to that effect here
https://gcc.gnu.org/pipermail/gcc-patches/2020-December/562379.html
which is pending review/approval.  Until then, manually stubbing out all of
floating_to_chars.cc should probably suffice to restore bootstrap on
this target.

Reply via email to