Лексическое представление программ C ++ включает ряд токенов предварительной обработки, которые используются в синтаксисе препроцессора или преобразуются в токены для операторов и знаков препинания:
preprocessing-op-or-punc: one of { } [ ] # ## ( ) <: :> <% %> %: %:%: ; : ... new delete ? :: . .* + - * / % ^ & | ~ ! = < > += -= *= /= %= ^= &= |= << >> >>= <<= == != <= >= && || ++ -- , ->* -> and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq
Каждый preprocessing-op-or-puncконвертируется в один токен формата translation phase 7.