cpp_builtin_type:
 
/* Different flavors of builtin macro.  _Pragma is an operator, but we
   handle it with the builtin code for efficiency reasons.  */
enum cpp_builtin_type
{
  BT_SPECLINE = 0,  /* `__LINE__' */
  BT_DATE,   /* `__DATE__' */
  BT_FILE,   /* `__FILE__' */
  BT_BASE_FILE,   /* `__BASE_FILE__' */
  BT_INCLUDE_LEVEL,  /* `__INCLUDE_LEVEL__' */
  BT_TIME,   /* `__TIME__' */
  BT_STDC,   /* `__STDC__' */
  BT_PRAGMA,   /* `_Pragma' operator */
  BT_TIMESTAMP,   /* `__TIMESTAMP__' */
  BT_COUNTER,   /* `__COUNTER__' */
  BT_HAS_ATTRIBUTE,  /* `__has_attribute__(x)' */
  BT_FIRST_USER,  /* User defined builtin macros.  */
  BT_LAST_USER = BT_FIRST_USER + 31
};