token :
keyword
identifier
constant
string-literal
operator
punctuator
preprocessing-token :
header-name
identifier
pp-number
character-constant
string-literal
operator
punctuator
each nonwhite-space character that cannot be one of the above