#error-Direktive

Die #error-Direktive wird verwendet, um Compiler-Fehler auszugeben. Diese sind beispielsweise notwendig, um anzuzeigen, ob eine Software auf dem bestehenden System compiliert werden kann, oder nicht. Beispielsweise ergibt folgende Codezeile auf dem System des Autors einen Fehler:


error: #error "MacOS not supported yet"
#if __APPLE__
  #error "MacOS not supported yet"
#endif

Details

Die #error-Direktive ist das direkte Pendant zur #warning-Direktive. Während die #warning-Direktive jedoch die Kompilation weiterlaufen lässt, bricht die #error-Direktive die Compilierung ab.

Die Anführungs- und Schlusszeichen "" sind eine gängige Konvention, um mit verschiedenen Compilern konsistent zu bleiben. Während manche Preprozessoren die gesamte Codezeile als Fehler annimmt, darf bei anderen die #error-Direktive nur ein Argument haben, was durch die Anführungs- und Schlusszeichen gegeben ist.

Die #error-Direktive wertet nichts aus. Auch vordefinierte Makros wie __LINE__ werden nicht verarbeitet, sondern direkt ausgegeben.