v2.21.0
leventeBajczi
released this
07 Aug 20:52
·
2727 commits
to master
since this release
This release fixed the ArrayLitExpr expression, and introduces a new ArrayInitExpr expression.
Until this release, arbitrary expressions could be passed to ArrayLitExpr, which only handled LitExpr correctly (e.g. the simplification assumed that only evaluatable expressions are present). This release forbids non-fully-evaluatable expressions in ArrayLitExprs, but introduces ArrayInitExpr which fills the gap by providing support for arbitrary expressions. The grammar does not change, but every initialization expression is compiled into an ArrayInitExpr, which when simplifiable, gets transformed into an ArrayLitExpr.