#								-*- syntax -*-
# led syntax specification for the C programming language
#
# (c) 2002 Jordan DeLong
#

words	:
	auto break case const continue default do else extern for
	goto if inline register return signed sizeof static switch
	typedef union unsigned volatile while restrict

	__inline __attribute__
	offsetof
	:						are "keyword";

words	:
	char double enum float int long short struct
	void _Bool _Complex _Imaginary

	u_char u_int u_long u_short u_int16_t int16_t
	u_int32_t int32_t u_int64_t int64_t uint16_t
	uint32_t uint64_t intptr_t uintptr_t
	:						are "type";


words	: defined :					are "preproc";
regexp	"#[ \t]*[a-zA-Z]+"				are "preproc";

begin	: /* :
end	: */ :						are "comment";

begin	: // :
endatnl							are "comment";

tokens	: { } ( ) [ ] :					are "grouping";
tokens	: ! % & | * + - / \: < = > ? ^ ~ . :		are "operator";

string	"'"	quote "\\"				are "string";
string	"\""	quote "\\"				are "string";

options	: hlnums :;
