so that only these defines are only used by that compiler. I.e. change: #define MSP (1) #define PD (!MSP)
To this: #ifdef _MSC_VER #define MSP (1) #define PD (!MSP) #endif /* _MSC_VER */
What is the advantage in doing this? Irrespective of platform, you are either compiling MSP code (in which case MSP is defined as 1 (true) or Pd code in which case MSP is defined as 0. The same header can be included in every Pd external without modification as is (though of course MSP should be defined as 0 for Pd).
Eric