#include_next

Diese Direktive ist eine GCC-spezifische Direktive, welche benötigt wird, um die zweite im Suchpfad gefundene Datei einzubinden. Da diese Direktive GCC-spezifisch ist und dort hautpsächlich bei System-Header-Dateien eingesetzt wird, wird von der Verwendung der #include_next-Direktive ABGERATEN, solange man nicht weiss, was sie bewirkt.

#include_next "filename"

Details

Die im systemweiten Suchpfad eingegebenen Orte für include-Dateien werden bei #include_next genau wie bei der #include-Direktive zwar der Reihe nach abgesucht, jedoch wird das erste Auftreten der Datei übersprungen. Erst die zweite Datei mit demselben Namen, die gefunden wird, wird eingebettet. Mittels dieser Direktive kann ein Programmierer eine Datei in den Suchpfad einzuschleusen, die denselben Namen trägt wie eine originale Datei (Beispielsweise stdio.h). Innerhalb der eingeschleusten Datei kann der Programmierer mit #include_next die originale Datei einbinden.

Die #include_next-Direktive unterscheidet nicht wie die #include-Direktive zwischen Anführungszeichen "" und grösser-kleiner-Zeichen <>, sondern erwartet stets Anführungs- und Schlusszeichen "".

Benutzt man die Direktive in der Datei, welche die main-Funktion enthält, so gibt der Compiler eine #include_next in primary source file-Warnung aus.