https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115481

--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Georg-Johann Lay from comment #4)
> (In reply to dv from comment #0)
> > New versions of avrlibc provide long double math functions,
> 
> In the case it matters:
> 
> 1) avr-libc has long double prototypes in math.h since v2.2.

Should GCC 14 support older versions of avr-libc? Or can we assume that anybody
trying to build libstdc++ (which requires an explicit --enable-libstdcxx for
avr) is using a new avr-libc?

Fedora 39 only has avr-libc-2.0.0 so my own test build use an older one.

> 2a) When long double is a 32-bit type, then the long double functions are
> implemented in avr-libc as aliases to float functions.
> 
> 2b) When long double is a 64-bit type, then the long double functions are
> implemented in avr-libgcc. This requires GCC v10+ and an appropriate
> configuration (default is long long = 64 bit and switchable to 32 bit)
> https://gcc.gnu.org/install/configure.html#avr

OK, any fixes to libstdc++ here will only be for GCC 12+ (and to be honest,
probably only 14+).


> 3) The implementations are not complete, for example log2f is missing, gamma
> etc. but log2l is available when long long is 64.
> 
> 4) Available multilib variants ([long] double is 32 and / or 64 bits) can be
> selected at configure time, and depending on configuration, [long] double
> layout can also be selected at compile time (-mdouble=64 etc.).

Reply via email to