Skip to content

Release 2.8

Compare
Choose a tag to compare
@informedcitizenry informedcitizenry released this 12 Nov 13:37
· 75 commits to master since this release

Release 2.8

Features

  • New assignment operators are now supported
    • Along with the .let keyword, the := operator can be used to define and assign values to variables.
    • Variables can also be mutated using compound operators, such as += and &=.
  • Added the .label directive for labels back-referenced from .goto directives, which avoids label redefinition errors.
  • New flow control command .do ... .whiletrue.
  • Enumerations are supported with the .enum keyword.
  • Slight performance improvement when referencing and updating label and variable values.

Changes

  • Section definintion syntax in config files has changed.
  • More improvements to source highlighting in error and warning messages.
  • The .target directive is no longer supported.

Fixes

  • The .switch directive had some errors.
  • Certain expressions in macro parameters were not processing correctly.
  • Some math expressions were incorrectly interpreted as conditional expressions.
  • Creating string array variables, and assigning variables to individual elements in an string array should work.
  • Certain .goto destinations were not being recognized.
  • The defect causing the .page directive to throw errors incorrectly has been fixed.
  • Certain sections with assembly were not being written to the output.
  • The .map keyword is did not behave correctly with string literal arguments.