Looks like just the opposite to me. /**/ comments are handled specially. The prepocessor doesn't know anything about // comments. If you want to change it, I wouldn't mind. I think nobody ever thought of or cared to do it before because we frown so much on programming with the preprocessor. The // at the end of your endif makes it through only because everything after the endif is ignored.