//
/\*
\*/
^[ \t]*#[ \t]*if[ \t]*0
[ \t]*#[ \t]*(endif|else)
"
(?<!\\{1}|\\{3}|\\{5}|\\{7})"
^\s*#\s*(if(?!\s*0\b)|ifdef|ifndef|include|import|else|elif|define|endif|undef|error|pragma|line)\b.*\\$
[^\\]\n
^\s*#\s*(if(?!\s*0\b)|ifdef|ifndef|include|import|else|elif|define|endif|undef|error|pragma|line)\b
\n
^\s*#\s*(?!if|ifdef|ifndef|include|import|else|elif|define|endif|undef|error|pragma|line).*
\b[_\w][_\w\d]*(?=[\s]*[(])
asm
break
case
continue
default
do
else
for
fortran
goto
if
return
sizeof
switch
while
_Bool
_Complex
_Imaginary
auto
char
const
double
enum
extern
float
int
inline
long
register
restrict
short
signed
static
struct
typedef
union
unsigned
void
volatile
gboolean
gpointer
gconstpointer
gchar
guchar
gint
guint
gshort
gushort
glong
gulong
gint8
guint8
gint16
guint16
gint32
guint32
gint64
guint64
gfloat
gdouble
gsize
gssize
'
'
\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b
\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?
\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b
\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b
NULL
TRUE
FALSE
MAX
MIN
__LINE__
__DATA__
__FILE__
__func__
__TIME__
__STDC__
if
ifdef
ifndef
else
elif
define
endif
undef
error
pragma
line