End preprocessor abuse