Il faut utiliser les facilités prévues par le langage pour construire des NaN ou les discerner.

Ton morceau de code est source de comportement indéterminé pour au moins deux raisons :

les...