んー、ざっと見たけど>>386相当のものはないような
has_infinityは型(doubleとか)が∞を表現として持つかのbool値だし
infinity()
quiet_NaN()
は値としての#INFなどの表現を直接得るものだし

結局処理系依存の
#include <float.h>
_isnan( val )
_finite( val )

gcc
#include <math.h>
int isnan(x);
int isinf(x);

これらを使うしかないんじゃ