]> git.saurik.com Git - bison.git/blobdiff - src/scan-gram.l
flex: don't trust YY_USER_INIT
[bison.git] / src / scan-gram.l
index abc8a89221059ee85f86f0c268e856fcbfc8606c..d0b81a8becb3b0f35e3e7554ea8bda6988f92a2d 100644 (file)
@@ -45,9 +45,6 @@
 
 #define YY_DECL GRAM_LEX_DECL
 
-#define YY_USER_INIT                                    \
-   code_start = scanner_cursor = loc->start;            \
-
 /* Location of scanner cursor.  */
 static boundary scanner_cursor;
 
@@ -166,6 +163,15 @@ eqopt    ([[:space:]]*=)?
   /* Where containing comment or string or character literal started,
      when applicable.  */
   boundary token_start PACIFY_CC (= scanner_cursor);
+
+  /* We cannot trust YY_USER_INIT, whose semantics changes over time
+     (it moved in Flex 2.5.38).  */
+  static bool first = true;
+  if (first)
+    {
+      scanner_cursor = loc->start;
+      first = false;
+    }
 %}