Является ли какая-либо часть синтаксиса синтаксиса С++ чувствительной?
Возможный дубликат:
Является ли С++ контекстно-зависимым или контекстно-зависимым?
Это, наверное, глупый вопрос для людей, осведомленных о компиляторах, но я честно не знаю ответа.
Является ли синтаксис С++ контекстно-зависимым? Другими словами, синтаксис С++ не выражен с помощью контекстно-свободных грамматик?
Очевидно, что С++ анализируется с помощью регулярных инструментов синтаксического анализа и что синтаксический анализ не является особенно неэффективным (!), но я действительно вспоминаю что-то об этом (я не помню, где), и я думал, что получаю свои факты прямо с сообщества, прежде чем распространять ложь... Может быть, подмножество С++ - это CS? Может быть, новая спецификация? Любая помощь приветствуется.
EDIT: Спасибо за все ответы. Однако, для полноты, какая часть компиляции имеет дело с двусмысленностью? CFG - это грамматика, которая имеет только один нетерминальный символ в левой части правила (например, A->zC
), CSG - это та, которая имеет терминал (плюс нетерминальный) слева, (aAv->QT
), где заглавные буквы являются нетерминалами, а строчные буквы - терминалами. Является ли какое-либо представление, подобное последнему, в грамматическом синтаксическом анализе исходного кода на С++?