reworked DoNotCompareWithNaN visitor