aboutsummaryrefslogtreecommitdiff
path: root/12/main.l
blob: 2fa1b443167ec7e56fb3b38b0805cfd5a5d59543 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
%{
extern int yylval;
%}

%%
"void" return VOID;
"int" return INT;
"float" return FLOAT;
"double" return DOUBLE;
"char" return CHAR;
"unsigned" return UNSIGNED;
"long" return LONG;
"return" return RET;
"for" return FOR;
"if" return IF;
"else" return ELSE;
"," return COMMA;
"(" return LPAREN;
")" return RPAREN;
"{" return LBRACE;
"}" return RBRACE;
";" return ENDL;
"++" return INC;
"--" return DEC;
"+" return ADD;
"-" return SUB;
"*" return MUL;
"/" return DIV;
"=" return ASSIGN;
"==" return EQ;
"!=" return NEQ;
"<" return LT;
">" return GT;
"<=" return LTE;
">=" return GTE;
[a-zA-Z_][a-zA-Z_0-9]* return ID;
. ;
\n ;
<<EOF>> return 0;
%%

int yywrap() {
    return 1;
}