v1.2.0
New Functionality
-
GH-913: Add support for switch-level
&parse-atand&parse-from
attributes inside a unit. -
Add optimizer pass removing unimplemented functions and methods.
This introduces a global pass triggered after all individual input
ASTs have been finalized, but before we generate any C++ code. We
then strip out any unimplemented member functions (typically Spicy
hooks), both their definitions as well as their uses.In order to correctly handle previously generated C++ files which
might have been generated with different optimization settings, we
disallow optimizations if we detect that a C++ input file was
generated by us.
Changed Functionality
- Add validation of unit switch attributes. We previously silently
ignored unsupported attributes; now errors are raised. - Remove configure option
--build-zeek-plugin. Spicy no longer
supports building the Zeek plugin/analyzers in-tree. This used to be
available primarily for development purposes, but became challenging
to maintain. - Add environment variable [HILTI_CXX_INCLUDE_DIRS]{.title-ref} to
specify additional C++ include directories when compiling generated
code. - GH-940: Add runtime check for parsing progress during loops.
Bug fixes
- Fix computation of unset locations.
- Fix accidental truncating conversion in integer code.