Christian Rinderknecht
cb8aaa7b9b
Additional refactoring to get local and global builds closer.
...
I removed the last top-level effect (the execution of cpp).
The idea is that ParserUnit.ml and each ParserMain.ml get closer
to pascaligo.ml, cameligo.ml and reasonligo.ml, respectively.
2020-01-14 18:35:30 +01:00
Christian Rinderknecht
c5b5ffe51a
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2020-01-14 12:59:32 +01:00
Christian Rinderknecht
9570caac53
Refactoring to bring local builds of the parsers closer to the global build.
...
Added --expr to parse expressions.
2020-01-14 01:27:35 +01:00
Suzanne Dupéron
ff9370a422
Improved typer error messages in operators.ml LIGO-371
2020-01-13 23:56:06 +01:00
Lesenechal Remi
7143b82ba8
support for key and signature literals
2020-01-13 11:37:10 +01:00
Pierre-Emmanuel Wulfman
bbfcc9839b
Updates for ReasonLIGO
2020-01-10 18:00:23 +01:00
Pierre-Emmanuel Wulfman
98d6aea4e1
mr review 2
2020-01-10 17:28:45 +01:00
Pierre-Emmanuel Wulfman
60edd0cf5b
after review 1
2020-01-10 16:41:47 +01:00
Christian Rinderknecht
6bf91538c4
Some refactoring.
...
I removed AST.mli from CameLIGO (for maintenance's sake).
I removed useless functions.
I renamed unlexer.ml to Unlexer.ml
I added a cleaning rule for my Makefile in Makefile.cfg
2020-01-10 15:32:54 +01:00
Pierre-Emmanuel Wulfman
812834656a
Updates for OcamLIGO and PascaLIGO
2020-01-10 13:52:05 +01:00
Christian Rinderknecht
8a683e1a69
Merge branch 'feature/literal-bytes-again' into 'dev'
...
Fix literal bytes
See merge request ligolang/ligo!325
2020-01-10 10:35:04 +00:00
Suzanne Dupéron
e7589f1a6a
Merge branch 'feature/auto-generate-folds' into 'dev'
...
Automatic generation of the boilerplate for folds
See merge request ligolang/ligo!303
2020-01-10 00:24:55 +00:00
Suzanne Dupéron
4ee75afb0a
fix test: add helper blurb
2020-01-09 23:13:14 +00:00
Suzanne Dupéron
1863cf324b
Improve error messages in ast_typed/combinators.ml
2020-01-09 23:13:14 +00:00
Tom Jack
5cef850bdd
Fix printing of bytes in parsers/lexers
2020-01-09 16:53:07 -06:00
Tom Jack
1b0ed4d4de
Fix literal bytes
2020-01-09 16:53:07 -06:00
Lesenechal Remi
20c9de0380
parset negative tests for all syntaxes
2020-01-09 22:19:40 +01:00
Lesenechal Remi
47199ca13c
add negative tests rules
2020-01-09 22:19:40 +01:00
Christian Rinderknecht
0791866a63
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-09 20:59:22 +01:00
Christian Rinderknecht
19e2ffb750
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-09 19:49:57 +01:00
Suzanne Dupéron
801efeed46
tests for automatic fold generator + fold_config hook to update the state before a node has been transformed, without transforming it.
2020-01-09 18:16:02 +00:00
Suzanne Dupéron
fe5f8d9f64
fold_config hook to update the state after a node has been transformed, without transforming it.
2020-01-09 18:16:02 +00:00
Suzanne Dupéron
8b98898dbf
first executable version of the auto-generation of folds
2020-01-09 18:16:02 +00:00
Suzanne Dupéron
3605768bb0
Started auto-generation of folds on ADTs (part of the code is generated, not all)
2020-01-09 18:16:02 +00:00
Suzanne Dupéron
8e18c1f8bd
update tests with the helper blurb
2020-01-09 18:59:10 +01:00
Suzanne Dupéron
75e6344972
Move the last two negative tests to a subdirectory, actually check that they fail in the expected way
2020-01-09 17:19:00 +00:00
Christian Rinderknecht
dad9b0f816
Refactoring of the AST and simplfier of PascaLIGO.
...
Some weeks ago, anonymous functions as expressions were added to
PascaLIGO, unfortunately in a manner that allowed in theory for
contexts in which a named function was found when an anonymous was
expected, and vice-versa. That explains that the simplifier had two new possible errors:
* unexpected_anonymous_function
("you provided a function declaration without name")
* unexpected_named_function
I changed the AST and the parser so that function expressions
correspond to anonymous functions (without block) and function
declarations correspond to named functions.
I also removed a error in the simplifier, which was unused:
* bad_bytes
("you provided a function expression with a name (remove it)")
2020-01-09 17:26:07 +01:00
Tom Jack
10eebf69bd
Support always-failing conditionals
2020-01-09 09:47:54 -06:00
Christian Rinderknecht
c347d1b08b
Removed temporary Emacs file.
2020-01-09 15:55:58 +01:00
Christian Rinderknecht
9426222d86
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-09 14:27:17 +01:00
Christian Rinderknecht
d123abd46f
Added new error for duplicated record fields.
...
Removed interface for the AST (for maintenance sake).
2020-01-09 14:26:47 +01:00
Sander Spies
8904ededb7
Improve error handling of negative start positions.
2020-01-09 10:41:24 +00:00
Lesenechal Remi
af5c32cb98
checking .md file arguments
2020-01-09 10:33:44 +01:00
Christian Rinderknecht
330d2ab351
Forgot to commit this.
2020-01-08 23:47:37 +01:00
Christian Rinderknecht
b8017ca8ac
Moved stuff to module [SyntaxError] from [AST] and [Parser].
...
Added support for the rejection of non-linear patterns in PascaLIGO.
2020-01-08 23:35:09 +01:00
John David Pressman
71989876db
Fix a bug, test added:
...
A never accounted message was not adding anything to the map
2020-01-08 20:58:26 +00:00
Suzanne Dupéron
13ff600509
union-find: rename partition to UnionFind for more consistency across the various names that opam and dune assign to this library
2020-01-08 18:12:00 +00:00
Suzanne Dupéron
dd9a4dfb47
update union-find library (part 2: adjust module names)
2020-01-08 18:12:00 +00:00
Suzanne Dupéron
5e444dd278
update union-find library (part 1: remove old copy, download https://github.com/rinderknecht/UnionFind.git 3fc434d0d75e40d40d17f5abb70d86a51f434771 in new folder)
2020-01-08 18:12:00 +00:00
Christian Rinderknecht
8bdc103ec8
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-08 16:46:59 +01:00
Christian Rinderknecht
9e7c97637c
Added support for language-specific parse errors for PascaLIGO:
...
* Duplicate variants in the same type declaration
* Duplicate parameter in the same function declaration
* Shadowing of predefined value in a declaration
I fixed the architecture for that support: ParserMain.ml is now where
those specific errors are handled, and they are produced by the
semantic actions of the parsers.
2020-01-08 16:39:52 +01:00
John David Pressman
16ac289381
[LIGO-347] Add changelog
2020-01-08 10:54:21 +00:00
Sander
8dd936ab90
Test lexer error messages.
2020-01-07 20:35:04 +00:00
Lesenechal Remi
05afd6c8c7
improve simplifier self pass errors
2020-01-07 18:32:32 +00:00
Sander Spies
8f57f63be7
Show proper parser error messages in the terminal again.
2020-01-07 12:15:54 +00:00
Tom Jack
6716af9123
Eliminate some spurious synonyms of "location"
2020-01-07 00:34:41 +00:00
Tom Jack
e73c901135
Show 'deepest' location for errors
2020-01-07 00:34:41 +00:00
Lesenechal Remi
d885eb8d4a
check key_hash format
2020-01-06 22:52:30 +01:00
Lesenechal Remi
2667ed62b3
fix indent (unrelated)
2020-01-06 22:29:07 +01:00
Lesenechal Remi
55a8734c81
key_hash now comparable
2020-01-06 21:31:54 +01:00
Lesenechal Remi
6841609362
allow key_hash literals
2020-01-06 21:31:45 +01:00
Lesenechal Remi
a0a8f114c0
replaces remove_from by take which does not raise any exceptions
2020-01-06 19:24:41 +01:00
Lesenechal Remi
8ce4772ae4
add tests
2020-01-06 18:51:43 +01:00
Lesenechal Remi
7e05b7d276
now removes the entry-point declaration from the program before aggregation
2020-01-06 18:41:53 +01:00
Sander Spies
301defda3f
Show lexer error messages in CameLIGO + PascaLIGO.
2020-01-06 13:46:11 +01:00
Christian Rinderknecht
ddd438aaa8
Forgot to add.
2020-01-06 10:03:41 +00:00
Christian Rinderknecht
a6e4837aa0
Sharing standalone lexers and parsers, and parser error API.
2020-01-06 10:03:41 +00:00
Lesenechal Remi
f133729318
fix dune file warnings
2020-01-05 14:32:15 +01:00
Lesenechal Remi
b1dd35b56d
fix definition of predecessor_timestamp
2020-01-05 14:29:22 +01:00
Christian Rinderknecht
e23350071f
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2020-01-04 17:47:20 +01:00
John David Pressman
10b26f610f
Show lexer error messages in ReasonLIGO
2020-01-04 08:24:16 +00:00
Lesenechal Remi
0a676d72a5
add --predecessor-timestamp to compile-storage/parameter
2020-01-03 18:11:44 +01:00
Lesenechal Remi
1a2a29bc03
negative timestamp literal test
2020-01-03 18:11:37 +01:00
Lesenechal Remi
c805a27b99
adding timestamp literals as string or int
2020-01-03 18:11:27 +01:00
Christian Rinderknecht
1806d6d74c
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2020-01-03 16:58:37 +01:00
Lesenechal Remi
a3a09dc0e5
functionize the name in the error
2020-01-03 16:23:18 +01:00
Lesenechal Remi
4d56a71bd1
propagate location for cameligo variables
2020-01-03 16:23:18 +01:00
Lesenechal Remi
3288696784
add the name of the variable in the unbound variable error message title
2020-01-03 16:23:18 +01:00
Lesenechal Remi
72f4ed35f1
print ill-typed michelson code
2020-01-03 15:25:37 +01:00
John David Pressman
5108b820cf
Fix minor typos in wrong michelson contract parameter/storage msgs
2020-01-03 15:25:37 +01:00
Lesenechal Remi
e834e2ac20
More informative errors when calling michelson typecheck function
2020-01-03 15:25:37 +01:00
Sander
ce6ccab728
Add support for empty constructors.
2020-01-03 13:01:13 +00:00
Lesenechal Remi
e25c5bac35
adding loops.md to the list of tested file and fixed "loops.md"
2020-01-02 20:38:45 +01:00
John David Pressman
7c4f59035f
Add inclusion directive docs and inclusion tests for CameLIGO and ReasonLIGO
2020-01-02 16:11:03 +00:00
Lesenechal Remi
2d7c3eb216
support bytes_unpack operator in pascaligo + tests
2020-01-02 16:19:21 +01:00
Christian Rinderknecht
c18e6e9748
Handling of EOF in ParserAPI messages.
2020-01-02 15:44:21 +01:00
Lesenechal Remi
46027de719
Proper error with location
2020-01-02 15:21:56 +01:00
Lesenechal Remi
8584bacf83
test & dune promote
2020-01-02 15:21:56 +01:00
Lesenechal Remi
42cbabac69
check ast_simplified address literals to be well formatted
2020-01-02 15:20:48 +01:00
Lesenechal Remi
98ac18ccef
propagate failwith strings (also support for others) in the error
2020-01-02 12:50:45 +01:00
Lesenechal Remi
d0ea94b472
'dune runtest' also execute 'md files tests'
2019-12-31 14:23:51 +01:00
Lesenechal Remi
c171ce7ad9
fully tested md_files
2019-12-31 14:23:51 +01:00
Lesenechal Remi
bddad3f234
add missing GE operator (>=) to cameligo
2019-12-31 14:23:51 +01:00
Lesenechal Remi
afa61e5825
Now have an default group "ungrouped" for all the code blocks without any "group=..."
2019-12-31 14:23:51 +01:00
Lesenechal Remi
08471ba246
basic architecture for the doc tests
2019-12-31 14:23:51 +01:00
Lesenechal Remi
c873350b15
no ppx in expect_tests lib
2019-12-31 14:23:51 +01:00
Lesenechal Remi
acee34985b
remove ppx in tests
2019-12-31 14:23:51 +01:00
Lesenechal Remi
6c7440ea79
inline magic
2019-12-31 14:23:51 +01:00
Lesenechal Remi
61d095ea28
also preprocess the executable
2019-12-31 14:23:51 +01:00
Lesenechal Remi
6f804a4432
exclude parser debug tooling
2019-12-31 14:23:51 +01:00
Lesenechal Remi
e8d1e359f4
exclude PPs from coverage
2019-12-31 14:23:51 +01:00
Lesenechal Remi
c8339ed2ef
first try
2019-12-31 14:23:51 +01:00
John David Pressman
dcfc8d6391
Horrible hack to rewrite CST for tuple param destruct,
...
Fails because Let In doesn't support multi-bind
2019-12-29 01:24:22 +00:00
Christian Rinderknecht
ea7460f8c9
Miscellaneous.
2019-12-28 17:58:15 +01:00
Christian Rinderknecht
c92e3b28ad
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-28 17:58:09 +01:00
John David Pressman
3d9489530a
Merge branch 'dev' into feature/cameligo-multi-bind-let-in
2019-12-27 09:29:30 -08:00
John David Pressman
e1ecb36e61
Have let ... in evaluate right hand side first during multi-bind
2019-12-26 21:06:24 -08:00
Christian Rinderknecht
6814e7786a
Same error formatting for the incremental and monolithic API of Menhir.
2019-12-26 18:57:02 +01:00
Christian Rinderknecht
379311a748
Shortened the parser's API.
...
Unfortunately, even thought all the front-ends use the same
ParserAPI.ml, that file cannot be moved to the folder `shared` due to
a dependency on AST.ml produced by Menhir.
2019-12-26 18:17:57 +01:00
Christian Rinderknecht
548b1267a4
Added .gitignore for all syntaxes.
2019-12-26 14:13:19 +01:00