$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
From: Gero Peterhoff (g.peterhoff_at_[hidden])
Date: 2022-07-31 17:28:30
Hi John,
i think your sign-function (boost/math/special_functions/sign.hpp) is incomplete. Because the resulttype is int, not all cases can be covered correctly (nan, inf, -0). With my implementation this works and it follows the std-conventions (sgn(FP) -> FP, sgn(INT/BOOL) -> double). I also tried to optimize them (branch-free, vectorizable).
sgn(FP) -> FP ±0/±1
sgn(FP nan/inf) -> FP nan/inf
sgn(INT) -> double +0/±1
sgn(UINT/BOOL) -> double +0/+1
regards
Gero