The lexemes in the following table are specific to C and C++. The state stays in LNORM.
Lexeme |
Representation |
Language |
|---|---|---|
| AMPERSAND | "&" | C, C++ |
| ANDAND | "&&" | C, C++ |
| ANDassign | "&=" | C, C++ |
| ARROW | "->" | C, C++ |
| ASSIGNOP | "=" | C, C++ |
| BRACKETS | "[]" | C, C++ |
| CHAR | char | C, C++ |
| CONST | const | C, C++ |
| DECR | "--" | C, C++ |
| DIVassign | "/=" | C, C++ |
| DOUBLE | double | C, C++ |
| ENUM | enum | C, C++ |
| EQ | "==" | C, C++ |
| ERassign | "^=" | C, C++ |
| FLOAT | float | C, C++ |
| FLOATINGconstant | {DG}*"."{DG}* {DG}*"."{DG}* {Whitespace}?{Exponent} {DG}+{Whitespace}?{Exponent} |
C, C++ |
| HAT | "^" | C, C++ |
| IDENTIFIER, TYPEDEFname | {LT}|{UCN})({LT}|{UCN}|{DG})* | C, C++ |
| INCR | "++" | C, C++ |
| INT | int | C, C++ |
| INTEGERconstant | "0"{OC}+
"0"[xX]{HX}+ {DG}+ |
C, C++ |
| LBRACKET | "[" | C, C++ |
| LONG | long | C, C++ |
| LS | "<<" | C, C++ |
| LSassign | "<<=" | C, C++ |
| MINUS | "-" | C, C++ |
| MINUSassign | "-=" | C, C++ |
| MOD | "%" | C, C++ |
| MODassign | "%=" | C, C++ |
| MULTassign | "*=" | C, C++ |
| NE | "!=" | C, C++ |
| NOT | "!" | C, C++ |
| OR | "|" | C, C++ |
| ORassign | "|=" | C, C++ |
| OROR | "||" | C, C++ |
| PLUS | "+" | C, C++ |
| PLUSassign | "+=" | C, C++ |
| QUESTION | "?" | C, C++ |
| RBRACKET | "]" | C, C++ |
| RS | ">>" | C, C++ |
| RSassign | ">>=" | C, C++ |
| SHORT | short | C, C++ |
| SIGNED | signed | C, C++ |
| SIZEOF | sizeof | C, C++ |
| STRUCT | struct | C, C++ |
| TWIDDLE | "~" | C, C++ |
| UNION | union | C, C++ |
| UNSIGNED | unsigned | C, C++ |
| VOID | void | C, C++ |
| VOLATILE | volatile | C, C++ |
The lexemes in the following table are specific to C++. The state stays in LNORM.
Lexeme |
Representation |
Language |
|---|---|---|
| ARROWstar | "->*" | C++ |
| CLASS | class | C++ |
| CLCL | "::" | C++ |
| DELETE | delete | C++ |
| DOTstar | ".*" | C++ |
| ELLIPSIS | "..." | C++ |
| NEW | new | C++ |
| OPERATOR | operator | C++ |
| PARENS | "()" | C++ |
| THIS | this | C++ |