summaryrefslogtreecommitdiff
path: root/src/analysis/scan/tokens.l
diff options
context:
space:
mode:
Diffstat (limited to 'src/analysis/scan/tokens.l')
-rw-r--r--src/analysis/scan/tokens.l15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/analysis/scan/tokens.l b/src/analysis/scan/tokens.l
index 92a5340..b541786 100644
--- a/src/analysis/scan/tokens.l
+++ b/src/analysis/scan/tokens.l
@@ -107,7 +107,11 @@
"rule" { PUSH_STATE(rule_intro); return RAW_RULE; }
-<rule_intro>[A-Za-z0-9_]+ { yylval->cstring = yytext; return RULE_NAME; }
+<rule_intro>[A-Za-z0-9_]+ {
+ yylval->sized_cstring.data = yytext;
+ yylval->sized_cstring.len = yyleng;
+ return RULE_NAME;
+ }
<rule_intro>[ \t]* { }
<rule_intro>"{" { POP_STATE; PUSH_STATE(raw_block); return BRACE_IN; }
@@ -139,7 +143,8 @@
POP_STATE;
EXTEND_BUFFER_IF_NEEDED(1);
(*buf)[(*used)++] = '\0';
- yylval->cstring = *buf;
+ yylval->sized_cstring.data = *buf;
+ yylval->sized_cstring.len = *used;
return STRING;
}
@@ -206,12 +211,12 @@
<strings,condition>$[A-Za-z0-9_]* {
- yylval->sized_cstring.cstring = yytext + 1;
+ yylval->sized_cstring.data = yytext + 1;
yylval->sized_cstring.len = yyleng - 1;
return IDENTIFIER;
}
<condition>[A-Za-z_][A-Za-z0-9_]* {
- yylval->sized_cstring.cstring = yytext;
+ yylval->sized_cstring.data = yytext;
yylval->sized_cstring.len = yyleng;
return NAME;
}
@@ -221,7 +226,7 @@
<strval>\"[^\"\\]+\" {
POP_STATE;
- yylval->sized_cstring.cstring = yytext + 1;
+ yylval->sized_cstring.data = yytext + 1;
yylval->sized_cstring.len = yyleng - 2;
return PLAIN_STRING;
}