made AEL 8-bit transparent; mainly the lexer was tossing chars with the hi-order bit set. Not nice. Also, allow @ in extension names, and a backslash, also.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Steve Murphy
2007-11-27 18:50:44 +00:00
parent 98fbe822f5
commit ab92fc1f35
23 changed files with 1184 additions and 1177 deletions

View File

@@ -33,7 +33,7 @@
* add option noyywrap to remove it.
*/
%option prefix="ael_yy"
%option noyywrap
%option noyywrap 8bit
/* batch gives a bit more performance if we are using it in
* a non-interactive mode. We probably don't care much.
@@ -178,6 +178,8 @@ NOARGG ([^(),\{\}\[\]]|\\[,()\[\]\{\}])*
NOSEMIC ([^;()\{\}\[\]]|\\[;()\[\]\{\}])*
HIBIT [\x80-\xff]
%%
\{ { STORE_POS; return LC;}
@@ -233,7 +235,7 @@ includes { STORE_POS; return KW_INCLUDES;}
[ ]+ { my_col += yyleng; }
[\t]+ { my_col += (yyleng*8)-(my_col%8); }
[-a-zA-Z0-9'"_/.\<\>\*\+!$#\[\]][-a-zA-Z0-9'"_/.!\*\+\<\>\{\}$#\[\]]* {
([-a-zA-Z0-9'"_/.\<\>\*\\\+!$#\[\]]|{HIBIT})([-a-zA-Z0-9'"_/.!\*\\\+\<\>\{\}$#\[\]]|{HIBIT})* {
STORE_POS;
yylval->str = strdup(yytext);
prev_word = yylval->str;