FLT_HAS_SUBNORM равен 0: какой fpclassify(<subnormal>) должен возвращать: FP_SUBNORMAL или FP_ZERO, или вести к UB?

Последующий вопрос для:

  1. FLT_HAS_SUBNORM равен 0: приводит ли выполнение fpclassify() с вручную построенным субнормальным к UB или приводит к тому, что WDB возвращает FP_SUBNORMAL?
  2. Если наличие субнормальных чисел необязательно (HAS_SUBNORM), то почему присутствие FP_SUBNORMAL обязательно?

Вопрос: в случае чего fpclassify(<subnormal>) вернет: FP_SUBNORMAL или FP_ZERO, или вести в УБ? Пожалуйста, дополните.

Другими словами: должна ли реализация иметь свойство DAZ (Denormals Are Zero)? (Подробнее см. Комментарий пользователя @njuffa в ссылке №1.) Если да / нет, то должно ли это свойство применяться ко всем операциям, связанным с числами (объектами) FP, или к некоторым операциям, связанным с числами (объектами) FP?

UPD20210825: Ответ комитета:

Это FP_ZERO.

Последствия:

  1. В случае FLT_HAS_SUBNORM is 0должна ли реализация иметь свойство DAZ (Denormals Are Zero), установленное в 1? да.
  2. Должен ли DAZ=1 применяться ко всем операциям с числами (объектами) FP? В ходе выполнения...

0 ответов

Другие вопросы по тегам