Da sich nicht alle Eigenschaften einer Programmiersprache durch kontextfreie Grammatiken beschreiben lassen, werden manche Fehler, z. B. Verstöße gegen die Typregeln der Programmiersprache, auch erst in der semantischen Analyse vom Compiler erkannt.