boostorg / boostorg/math

operator<</>> for __float128 are poore

Ouverte
#1,118 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
C++
Étoiles
374
Forks
264
Merge moyen
1 j 23 h
PR mergées (30 j)
17

Description

generally
- hexfloat is not supported
- in the implementations, exceptions are used for flow control -> this procedure is/(has never been) sensible

Suggestions
a) via quadmath_snprintf/strtoflt128
- for gcc the operators can be updated
- this may also be possible for intel
1. reasonably current intel compilers also seem to provide quadmath_snprintf/strtoflt128. Is that correct? Then you can use these functions.
2. What relevance does __float128/_Quad still have for intel? This could then be removed if necessary.

b) via std/boost to_chars/from_chars
- std
1. If std::float128_t is available, these functions can be used
2. Possibly these functions are still implemented in gcc for __float128 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113260
- boost
With boost 1.85 there is boost::charconv, but the functions are **incompatible** with the standard https://www.boost.org/doc/libs/1_85_0_beta1/libs/charconv/doc/html/charconv.html#to_chars_usage_notes_for_to_chars_for_floating_point_types
Matt unfortunately refuses to implement them in a compatible way :-(
So the NaN cases would have to be handled manually.

regards
Gero

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.