Ich denke, die Frage ist autark. Ist die Syntax der C-Sprache vollständig durch kontextfreie Grammatiken definiert, oder haben wir Sprachkonstrukte, für die im Verlauf des Parsens möglicherweise nicht kontextfreie Definitionen erforderlich sind?
Ein Beispiel für ein Nicht-CFL-Konstrukt, das ich dachte, war die Deklaration von Variablen vor ihrer Verwendung. In Compilern (Aho Ullman Sethi) wird jedoch angegeben, dass die C-Sprache Identifikatoren nicht anhand ihrer Namen unterscheidet. Alle Bezeichner werden vom Lexical Analyzer als "ID" gekennzeichnet. Wenn C nicht vollständig durch CFGs definiert ist, kann jemand ein Beispiel für ein Nicht-CFL-Konstrukt in C geben?