preprocessor bug