isn't this evaluates to 0 if not defined?
Yes, but it emits a warning under -Wundef, and it's only ever supposed to be defined with value 1, so it's better to just check whether it's defined.
isn't this evaluates to 0 if not defined?