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.
22 lines
535 B
Markdown
22 lines
535 B
Markdown
# 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
|
|
# include
|