I know that 0.0 == -0.0 and that the C standard says if(a) is equivalent to if(a!=0), but:
Is if(-0.0) guaranteed to evaluate as false by the standard? Would an implementation be buggy if if(-0.0) is evaluated as true?
I guess the key point here is whether the if(a!=0) meaning of if(-0.0) must be understood as exactly the same != operator as in floating point, in which case there would be guarantee that it must be false.