Skip to content

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 30 Jul 13:19
· 2499 commits to main since this release

New Functionality

  • GH-913: Add support for switch-level &parse-at and &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.