Identifiers

An identifier is an arbitrarily long sequence of digits, underscores, lowercase and uppercase Latin letters, and most Unicode characters.

# Defect reports

DRApplied toBehavior as publishedCorrect behavior
CWG 1440C++11decltype expressions preceding :: could denote any typecan only denote classor enumeration types
CWG 1963C++11implementation-defined characters other than digits, non-digitsand universal character names could be used in an identifierprohibited
CWG 2521C++11the identifier in user-defined-string-literal ofa literal operator was reserved as usualthe rules are different
CWG 2771C++98&a was not transformed into &this->a in class contextsit is transformed
CWG 2777C++20the type of an identifier expression was unclearif it names a template parameter objectmade clear
CWG 2818C++98predefined macro names are reservedthey are not reserved

# See also