Skip to content

0.5.6

Choose a tag to compare

@mincrmatt12 mincrmatt12 released this 12 Apr 15:25
· 12 commits to master since this release

This is a minor feature release, improving various error messages.

For example, the test example/test/optional3.fail.nmfu now errors with

Compile error: Ambiguous transitions detected while joining DFAs on character 't'
Due to:
- line 3:
        /(fg|[et])est/; // ambiguous on first letter (in t case)
             ^
- direct match 'text'[0]:
  at line 6:
    "text";

New Features

  • When generating an error about ambiguity, show specific characters causing the ambiguity where possible. (4ef3b56, cebb198)
  • Give error names to states and transitions in direct / case-insensitive matches to allow mentioning specific parts of a match in an error. (b05a690)
  • Properly annotate regular expression matches with debug line/column information. (a9e372e, 6b8a9fa, d5f4450)
  • Report case match ambiguity errors with better specificity (annotating on transition instead of state.) (c342c1b)

Bugs Fixed

  • Fix a typo in error messages which do not have a line number associated with them. (69bbacb)
  • Fix line number associations for loop & foreach statements. (bc48bf2)
  • Give line numbers for duplicate definition errors. (0c0323e)
  • When using -ddtree, ensure the dump still occurs if an error is thrown. (50ce062)