parser/calc/lexer.l
author Markus Bröker <mbroeker@largo.dyndns.tv>
Thu, 16 Apr 2009 12:49:13 +0200
changeset 59 a7ba10b68915
parent 39 46d7ec9d63bd
permissions -rw-r--r--
getpwnam_error.c: * The memory hole can be fixed with two different approaches 1) Change /etc/nsswitch.conf: passwd: compat to passwd: files 2) LD_PRELOAD=/lib/libnss_compat.so.2 valgrind ./getpwnam_error GLIBC loads libnss_compat on the fly and unloads it. Thanks to telexicon for reporting this... committer: Markus Bröker <mbroeker@largo.homelinux.org>

/**
 * test/demos/parser/lexer.ll
 * Copyright (C) 2008 Markus Broeker
 */

%{
    #include <stdio.h>
    #include "parser.h"
%}

%%

[0-9]+         { yylval = atoi(yytext); return DIGIT; }
[a-zA-Z]       { yylval = yytext[0]; return LETTER; }
"+"            { return PLUS; }
"-"            { return MINUS; }
"*"            { return MUL; }
"/"            { return DIV; }
"("|")"|"="    { return yytext[0]; }
[ \t]+         {}
\n             { return yytext[0]; }
.              { printf("FEHLER: %s\n", yytext); }
%%