diff options
Diffstat (limited to 'ld/ldlex.l')
-rw-r--r-- | ld/ldlex.l | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -65,6 +65,9 @@ unsigned int include_stack_ptr = 0; %a 4000 %o 5000 + +CMDFILENAMECHAR [_a-zA-Z0-9\/\.\\_\+\$\:\[\]\\\,\=\&\!\<\>\-] +CMDFILENAMECHAR1 [_a-zA-Z0-9\/\.\\_\+\$\:\[\]\\\,\=\&\!\<\>] FILENAMECHAR1 [_a-zA-Z\/\.\\] SYMBOLCHARN [_a-zA-Z\/\.\\0-9] FILENAMECHAR [_a-zA-Z0-9\/\.\-\_\+\=\$\:\[\]\\] @@ -189,7 +192,7 @@ WHITE [ \t\n]+ yylval.integer = strtol(yytext+1, 0, base); return INT; } -<MRI,BOTH,EXPRESSION>"$"?"0x"?([0-9A-Fa-f])+(M|K|m|k)? { +<DEFSYMEXP,MRI,BOTH,EXPRESSION>"$"?"0x"?([0-9A-Fa-f])+(M|K|m|k)? { yylval.integer = strtol(yytext,0,hex_mode); if (yytext[yyleng-1]=='M' || yytext[yyleng-1] == 'm') { @@ -306,6 +309,12 @@ WHITE [ \t\n]+ <MRI>"sect" { RTOKEN(SECT); } <MRI>"absolute" { RTOKEN(ABSOLUTE); } +<COMMAND>{CMDFILENAMECHAR1}{CMDFILENAMECHAR}* { + yylval.name = buystring(yytext); + return NAME; + } + + <MRI,BOTH,EXPRESSION>{FILENAMECHAR1}{FILENAMECHAR}* { yylval.name = buystring(yytext); return NAME; |