> I have another amusing idea -- preprocess the header before and > after the change, and if there is no non-whitespace change, then > the header must have been safe beforehand. No, that isn't safe. Whitespace can change the meaning. Moreover, the header might contain sections that are enabled only with special predefined macros, and these might need fixing.