Why does the C preprocessor interpret the word “linux” as the constant “1”?