This update features a few parser enhancements, including significant performance improvements (over 2x faster parsing the OpenROAD codebase)! In addition:
- Unbraced `expr` commands without substitutions are now parsed as expressions
- `proc` arguments are now parsed as lists
These two changes may have effects on formatting, and will result in `tclint` surfacing some syntax errors that were previously ignored.
In addition, this update enhances some checks:
- New `redundant-expr` check flags cases where an `[expr ...]` is unnecessary, e.g. `if {[expr i % 2] == 0}`
- The `unbraced-expr` check now flags cases where multiple braced or quoted words are passed to `expr`, since such cases can be hard to reason about