summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2010-06-02 12:54:15 -0700
committerCarl Worth <cworth@cworth.org>2010-06-02 12:54:15 -0700
commit111e25bd84fb923bbab5b0ca76bbbb5d9a537a26 (patch)
tree1ae96196971bd7ddadeb065f3a0555ff7c5e0381
parente4b2731a25c071407d90c6c593a226574e9c36f9 (diff)
Factor out common sub-expression from multi-line-comment regular expression.
In two places we look for an (optional) sequence of characters other than "*" followed by a sequence of on or more "*". Using a name for this (NON_STARS_THEN_STARS) seems to make it a bit easier to understand.
-rw-r--r--glcpp-lex.l4
1 files changed, 3 insertions, 1 deletions
diff --git a/glcpp-lex.l b/glcpp-lex.l
index 2aec46a..0d9a754 100644
--- a/glcpp-lex.l
+++ b/glcpp-lex.l
@@ -45,6 +45,8 @@ DECIMAL_INTEGER [1-9][0-9]*[uU]?
OCTAL_INTEGER 0[0-7]*[uU]?
HEXADECIMAL_INTEGER 0[xX][0-9a-fA-F]+[uU]?
+NON_STARS_THEN_STARS [^*]*[*]+
+
%%
/* Single-line comments */
@@ -53,7 +55,7 @@ HEXADECIMAL_INTEGER 0[xX][0-9a-fA-F]+[uU]?
}
/* Multi-line comments */
-"/*"([^*]*[*]+[^*/])*[^*]*[*]+"/" {
+"/*"({NON_STARS_THEN_STARS}[^*/])*{NON_STARS_THEN_STARS}"/" {
if (yyextra->space_tokens)
return SPACE;
}