Compile errors can be generated using the preprocessor. This is useful for a number of reasons some of which include, notifying a user if they are on an unsupported platform or an unsupported compiler.
e.g. Return Error if gcc version is 3.0.0 or earlier.
#if __GNUC__ < 3 #error "This code requires gcc > 3.0.0" #endif
e.g. Return Error if compiling on an Apple computer.
#ifdef __APPLE__ #error "Apple products are not supported in this release" #endif