Add an error for TWild instead of a raw Failure
This MR adds an error to replace the failure on TWild
:
$ cat twild.mligo
let x : _ = 4
$ dune exec -- ligo print-mini-c twild.mligo
ligo: internal error, uncaught exception:
(Failure "unsupported TWild")
Raised at file "stdlib.ml", line 29, characters 17-33
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 344, characters 12-15
Called from file "src/passes/04-tree_abstraction/cameligo/compiler.ml", line 636, characters 22-79
Called from file "src/passes/04-tree_abstraction/cameligo/compiler.ml", line 763, characters 23-74
Called from file "list.ml", line 92, characters 20-23
Called from file "list.ml", line 92, characters 32-39
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 371, characters 36-52
Called from file "src/passes/04-tree_abstraction/cameligo/compiler.ml", line 771, characters 19-75
Called from file "src/main/compile/helpers.ml", line 105, characters 4-52
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "src/main/compile/helpers.ml", line 177, characters 4-39
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "src/main/compile/utils.ml", line 9, characters 24-64
Called from file "src/main/compile/utils.ml", line 13, characters 24-69
Called from file "src/main/compile/utils.ml", line 18, characters 20-60
Called from file "src/main/build/build.ml", line 117, characters 22-80
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "src/main/build/build.ml", line 126, characters 48-128
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "list.ml", line 121, characters 24-34
Called from file "src/main/build/build.ml", line 153, characters 26-110
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "src/main/build/build.ml", line 159, characters 28-83
Called from file "src/bin/cli.ml", line 424, characters 26-76
Called from file "vendors/ligo-utils/simple-utils/trace.ml", line 237, characters 11-14
Called from file "src/bin/cli.ml", line 419, characters 6-580
Called from file "cmdliner_term.ml", line 25, characters 19-24
Called from file "cmdliner.ml", line 26, characters 27-34
Called from file "cmdliner.ml", line 117, characters 32-39
With this MR ligo handles the error as follows:
$ dune exec -- ligo print-mini-c twild.mligo
File "twild.mligo", line 1, characters 8-9:
1 | let x : _ = 4
Invalid type.
It's not possible to use _ in a type.