В нотации синтаксиса, используемой в этом документе, синтаксические категории обозначаются italic типом, а буквальные слова и символы - constant width типом. Альтернативы перечислены в отдельных строках, за исключением некоторых случаев, когда длинный набор альтернатив отмечен фразой «одна из». Если альтернативный текст слишком длинный для размещения в строке, текст продолжается на последующих строках с отступом от первой. Необязательный терминальный или нетерминальный символ обозначается нижним индексом «opt», поэтому
{ expressionopt }
указывает на необязательное выражение, заключенное в фигурные скобки.
Имена для синтаксических категорий обычно выбираются в соответствии со следующими правилами:
X-name является использование идентификатора в контексте , который определяет его значение (например, class-name, typedef-name).
X-id - идентификатор без контекстно-зависимого значения (например, qualified-id).
X-seq - это один или несколько Xбез промежуточных разделителей (например, declaration-seqэто последовательность объявлений).
X-list один или несколько Xразделенных запятыми (например, identifier-listэто последовательность идентификаторов, разделенных запятыми).