c0ee726fb2
Preprocessor is now a library installed by opam. Replaced ligolang@gmail.com by contact@ligolang.org in opam files. Reformatted some opam files. Removed #line directive from preprocessor. Added to the interface of ParserUnit. Script messages.sh now checks the identity of .msg and .msg.old to avoid undue warning about possibly different LR items.
535 B
535 B
A preprocessor a la C# in OCaml
The following preprocessing directives are supported
- #define
- #elif
- #else
- #endif
- #endregion
- #error
- #if
- #include
- #region
- #undef
Note: Because it is meant for LIGO, there is no error raised for
invalid preprocessing directives, as the symbol #
is valid in
PascaLIGO (cons operator for lists). Also, the preprocessor may report an error on some weird but valid PascaLIGO contracts, like
const include : list (int) = list [1] const l : list (int) = 0