Skip to content

v1.3.0

Compare
Choose a tag to compare
@vsariola vsariola released this 20 Aug 14:38
· 28 commits to main since this release

Added

  • Option --data-to-code (or just -d) that puts the data in
    hexadecimal strings in the code and adds a small stub to load the data
    in the string at right address
  • Option --no-load to disable using the load trick altogether.
    load'' is not entirely semantically identical to function()end, as
    the load'' cannot access local variables in the outer scope.
    However, this is such a rare occurrence that only disable it when
    absolutely necessary.

Changed

  • Parse errors report the offending line more accurately

Fixed

  • Printing function calls with a single table or string parameter
  • Local variables without immediate assignment crashed the parser
  • The initial minification used reserved keywords (in particular: or)
  • Handling carts with multiple CODE chunks
  • Variable names that started with or or and could give an parse
    error; for example, in x=1 orange=2 the first statement was parsed
    as x=1 or ange, followed by =1 which gave the parse error.
  • Escaping \r and \f in quoted string literals
  • -- { was not considered comment, even though it was not considered
    permutation block either
  • Add space between a numeral and following period when printing. For
    example, 1 ..2 (string concatenation) should not be printed as
    1..2, as LUA then parses the beginning of it as floating point
    numeral 1.