У меня есть лексер, написанный кем-то другим, который сгенерировал его с помощью flex. Это работает, но в примере, который содержит строковый литерал и много символов NUL, сканирование выполняется очень медленно.
После некоторого поиска в Google я нашел этот абзац в flex-документах, в котором говорится об этом без причины:
Последнее замечание: flex работает медленно при сопоставлении NUL, особенно когда токен содержит несколько NUL. Лучше всего писать правила, которые соответствуют коротким текстам, если ожидается, что текст часто будет включать NUL.
В чем проблема flex с символами NUL?