diff options
author | Ken Raeburn <raeburn@cygnus> | 1994-05-05 22:51:27 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@cygnus> | 1994-05-05 22:51:27 +0000 |
commit | 6bd7601ee1e8cc17b77bcb59152a3069c6e660a4 (patch) | |
tree | a55cf923b223a7b9cfeb9be1f2114605738dcb9f /binutils | |
parent | 6d41de1976c1e25ec5e30f58a48df4c93f6c5903 (diff) | |
download | gdb-6bd7601ee1e8cc17b77bcb59152a3069c6e660a4.zip gdb-6bd7601ee1e8cc17b77bcb59152a3069c6e660a4.tar.gz gdb-6bd7601ee1e8cc17b77bcb59152a3069c6e660a4.tar.bz2 |
(yywrap): Define as function if not defined as a macro.
Diffstat (limited to 'binutils')
-rw-r--r-- | binutils/syslex.l | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/binutils/syslex.l b/binutils/syslex.l new file mode 100644 index 0000000..e1fd85c --- /dev/null +++ b/binutils/syslex.l @@ -0,0 +1,51 @@ +%{ +#include "y.tab.h" +char *word; +int number; +int unit; + +#ifndef yywrap +static int yywrap () { return 1; } +#endif +%} +%% +"(" { return '(';} +")" { return ')';} +"[" { return '[';} +"]" { return ']';} +" " { ; } +";".* { ; } +"\t" { ; } +"\n" { ; } +"\""[^\"]*"\"" { +yylval.s = malloc(strlen (yytext)); +strcpy(yylval.s, yytext+1); +yylval.s[strlen(yylval.s)-1] = 0; + return NAME; + } + +0x[0-9a-f]+ { + yylval.i = strtol(yytext,0,16); + return NUMBER; + } + +[0-9]+ { + yylval.i = atoi(yytext); + return NUMBER; + } + + +"bits" { yylval.i =1 ;return UNIT;} +"bit" { yylval.i = 1; return UNIT;} +"bytes" { yylval.i= 8; return UNIT;} +"byte" { yylval.i = 8; return UNIT;} + +"int" { yylval.s = "INT"; return TYPE;} +"barray" { yylval.s = "BARRAY"; return TYPE;} +"chars" { yylval.s = "CHARS"; return TYPE;} +"variable" { yylval.i = 0; return NUMBER;} +"counted" { yylval.i = -4; return NUMBER;} +"addrsize" { yylval.i = -2; return NUMBER; } +"segsize" { yylval.i = -1; return NUMBER; } +"cond" { return COND;} +"repeat" { return REPEAT;} |