Releases: Genivia/RE-flex
reflex v1.6.6
Fixed an issue where a trailing backslash in a pattern in a lexer specification causes a reflex-generated C++ comment to extend to the next line, which results in a compilation warning and possibly a line of code being skipped.
reflex v1.6.5
Permit }
as closing marker for %top{
, %class{
, and %init{
code blocks, i.e. either %}
or }
may be used as a closing marker.
reflex v1.6.4
Added option --yy
to enable --flex
and --bison
, also defines the global FILE*
variables yyin
and yyout
for enhanced Lex/Flex compatibility (yyin
is otherwise a pointer to the reflex::Input
object to read files, streams, and strings); --flex
supports Lex/Flex POSIX %array
; new %option ctorarg="arg, arg ..."
.
reflex v1.6.3
Updated to Unicode 13; fixed start condition scope specifications for patterns that start with a {
; updated lex.vim.
reflex v1.6.2
Improved reflex::PCRE2Matcher
; fixed MSVC++ x86 32-bit build error when HAVE_AVX512BW
is enabled (requires AVX512BW).
reflex v1.6.1
Fixed missing PCRE2 regex type std::string
in generated scanners.
reflex v1.6.0
Added PCRE2 regex matcher classes and updated reflex option --matcher=pcre2-perl
; optimized RE/flex matcher find()
with AVX/SSE2/NEON/AArch64; updated and improved regex converters.
reflex v1.5.8
Added new wunput()
method; added new lex.vim
for improved Flex and RE/flex Vim syntax highlighting (fixes buggy Vim's lex.vim
); added new yaml.l
example; fixed --freespace
with --unicode
when bracket lists contain a #
; character class operators {+}
, {-}
, {&}
now accept defined names as first operands and inverted character classes; indent anchor \k
now matches only when indent level is changed as documented.
reflex v1.5.7
Expanded file encoding formats to include ISO-8859-2 to 16, MacRoman, KOI8; fixed a bug in line()
and span()
.
reflex v1.5.6
Added new option --noindent
to speed up pattern matching and lexical analysis by disabling indentation tracking in the input (also disables anchors \i
, \j
, and \k
); speed improvements.