Commit Graph

1438 Commits

Author SHA1 Message Date
Pierre-Emmanuel Wulfman
c17a749078 review 2 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
dbb6fbd8e6 review 1 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
abbc20459c add doc and test 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
a5f44d3e88 clean-up junk 2020-03-12 16:05:17 +01:00
Sander Spies
51251f9464 Remove debug text 2020-03-12 16:05:17 +01:00
Sander Spies
8a183ff1d2 Fixing error.messages. 2020-03-12 16:05:17 +01:00
Sander Spies
6e76a5d96d Update messages file 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
092360de93 WIP: fix parser error 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
27f583266e test for tail recursion 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
c46002b160 modifying doc and test for loops (Cameligo and pascaligo) 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
fa5983e9d3 fix contrat religo 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
b15d9a5123 compiling Pascaligo 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
e7c71ae4cc passing test for Cameligo 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
b2f0e8bbc4 WIP: adding E_recursive in ast 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
734620a179 Keyword add for pasca,came,reason:ligo;typing error in contract 2020-03-12 16:05:17 +01:00
Christian Rinderknecht
b51818bc4e Fixed parsing and source pretty-printing of recursive functions. 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
68b6e6d3b0 remove option(recursive) in Parser.mly; parse error still 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
b438f065b5 WIP:adding rec keyword 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
1597d1eaf4 WIP: recursion 2020-03-12 16:05:17 +01:00
Sander Spies
678a3bee59 Fix error messages. 2020-03-10 16:43:29 +01:00
Sander Spies
a94753f720 Re-add error messages. 2020-03-10 16:39:05 +01:00
Sander Spies
d273d0fbfe Merge. 2020-03-10 16:33:24 +01:00
Sander Spies
31e8035e6a Remove incorrect Big_map operations. 2020-03-10 14:52:59 +01:00
Sander Spies
bcb77c6305 Merge 2020-03-10 12:55:51 +01:00
Sander Spies
608a7b7f95 - Refactor operators.ml to have shared pseudo modules.
- Fix tests for big_map
2020-03-10 12:54:18 +01:00
Pierre-Emmanuel Wulfman
4ed4203b46 Merge branch '145-entry-point-name-length-limit' into 'dev'
Resolve "Entry point name length limit"

Closes #145

See merge request ligolang/ligo!446
2020-03-09 18:24:09 +00:00
Pierre-Emmanuel Wulfman
1e36c64d42 Merge branch 'ast/loop_into_recursion' into 'dev'
Removes loops

See merge request ligolang/ligo!492
2020-03-09 18:24:07 +00:00
Tom Jack
8806b52b68 Merge branch 'add-crypto-check-example' into 'dev'
Add working example of Crypto.check

See merge request ligolang/ligo!475
2020-03-09 18:05:59 +00:00
Lesenechal Remi
66aca916bf mapping over type_operator types is useless 2020-03-09 18:29:07 +01:00
Lesenechal Remi
503d8f771e add tests for sum type names limit length 2020-03-09 18:29:07 +01:00
Lesenechal Remi
5a15feadc1 now map over type declarations 2020-03-09 18:29:07 +01:00
Lesenechal Remi
bc7a4daa64 add 'mapi' equivalent for label and constructor maps 2020-03-09 18:29:05 +01:00
Pierre-Emmanuel Wulfman
e436a0a08a removes loops 2020-03-09 18:24:02 +01:00
Lesenechal Remi
25f004844a self: now reject capitalized entrypoint annotation 2020-03-09 11:23:08 +01:00
Lesenechal Remi
b7c08b78d5 self operator now takes an entrypoint annotation as parameter 2020-03-09 11:23:08 +01:00
Lesenechal Remi
e2776e9849 New checks in the self_ast_typed pass:
* Ast_typed stage is now aware of the main function name
* main function type is checked against expected contract types
* Tezos.self (returning contract type) is checked against main function type
* In general, Ast_typed.compile signature has been changed to enable/disable contract-related checks
2020-03-09 11:23:08 +01:00
Lesenechal Remi
f0ad2fed04 new pass : self_ast_typed 2020-03-09 11:23:08 +01:00
Lesenechal Remi
550e6b084b new constant : add self (michelson SELF) 2020-03-09 11:23:08 +01:00
Pierre-Emmanuel Wulfman
49625001b1 Fix simplifyer and test 2020-03-07 02:39:39 +01:00
Pierre-Emmanuel Wulfman
558f3f5e80 fix annotation for funciton in ReasonLigo 2020-03-07 02:00:29 +01:00
Sander Spies
c95f4ee02c Merge 2020-03-06 08:38:07 +01:00
John David Pressman
0f8c7876cd Merge branch 'dev' into contract/pledge-distribute 2020-03-05 14:22:41 -08:00
Lesenechal Remi
9de04123d3 --balance option and updated tests 2020-03-05 20:52:47 +01:00
Tom Jack
d10b95357f Detect gas exhaustion while typechecking 2020-03-05 10:43:40 -06:00
John David Pressman
168a4d5b84 Add pledge-distribute contract 2020-03-05 00:24:55 -08:00
Pierre-Emmanuel Wulfman
adc31a6e01 Merge branch 'rinderknecht@contracts' into 'dev'
Refactoring of the test contracts

See merge request ligolang/ligo!465
2020-03-04 19:26:50 +00:00
Tom Jack
0871fe9c59 Merge branch 'feature/remove-assignment-mini_c' into 'dev'
Remove (unused) assignment from mini_c

See merge request ligolang/ligo!454
2020-03-04 18:38:18 +00:00
Tom Jack
8f6f4398dd Add working example of Crypto.check 2020-03-04 12:03:58 -06:00
Christian Rinderknecht
8f0b1b9c32 I forgot to promote this negative test. 2020-03-04 18:05:29 +01:00
Christian Rinderknecht
2b01dd78fc Fixed the parsing of type t = list ((u,v)); 2020-03-04 16:45:05 +01:00
Christian Rinderknecht
8b2a182c6a Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts 2020-03-04 15:59:47 +01:00
Christian Rinderknecht
bd48a56a24 Forgot to add to the previous commit. 2020-03-04 15:36:33 +01:00
Christian Rinderknecht
d43209f1a1 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts 2020-03-04 15:26:43 +01:00
Christian Rinderknecht
313bb0c2b3 Reverted two changes. 2020-03-04 15:23:51 +01:00
Pierre-Emmanuel Wulfman
b7e65764dd dune promote 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
c23827e8de new negative test 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
dfb1e1ebef add negative test 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
4f13a33d46 fix bug with wrong annotation at the beginning 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
a19e2ceb3b adding negative test 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
89f2b44e7d Works also when the function parameter are passed in the rhs
Fix some religo contract
2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
6e35dadcc4 fix self_in_lambda.mligo 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
5159f293f8 Repare function annotation in let binding for Camligo and ReasonLigo and fix some contracts 2020-03-04 10:35:34 +01:00
Tom Jack
ac374ed2ba Remove debug printfs 2020-03-03 23:47:10 -06:00
Jev Björsell
7dfc3b01c9 Merge branch 'move-examples-folder' into 'dev'
Moved examples folder

See merge request ligolang/ligo!463
2020-03-03 22:41:17 +00:00
Maksym Bykovskyy
e27dfa1bce Moved examples folder 2020-03-03 22:41:16 +00:00
Lesenechal Remi
cf383fe327 more tests 2020-03-03 13:46:11 +01:00
Lesenechal Remi
1e5abda3ee create contract : conservative restrictions & errors in typer, before inlining/beta optimizations 2020-03-03 13:46:11 +01:00
Lesenechal Remi
9a30eb67c1 create_contract: add some tests 2020-03-03 13:46:11 +01:00
Lesenechal Remi
ffd792e2f8 CREATE_CONTRACT: add a check in the typer to allow only closures 2020-03-03 13:46:11 +01:00
Lesenechal Remi
ad7024c62b compiler: compile CREATE_CONTRACT 2020-03-03 13:46:11 +01:00
Lesenechal Remi
4e48026daa typer: typing C_CREATE_CONTRACT 2020-03-03 13:46:11 +01:00
Lesenechal Remi
3260e87d67 new constant : C_CREATE_CONTRACT 2020-03-03 13:46:11 +01:00
John David Pressman
9791b993d2 Abbreviate and de-tone LIGO introduction draft 2020-03-02 21:42:45 -08:00
Christian Rinderknecht
00e6959503 Refactoring of the test contracts. 2020-03-02 18:01:56 +01:00
Tom Jack
8229d6a6af Remove (unused) assignment from mini_c 2020-02-28 13:58:29 -06:00
Christian Rinderknecht
a9214f864d Reviewing again the PascaLIGO contracts. 2020-02-27 19:09:14 +01:00
Christian Rinderknecht
93682629b4 Updating contracts. 2020-02-27 17:51:29 +01:00
Gabriel Alfour
4d61c2285c Merge branch '151-union-type-option-names-collision-when-matching' into 'dev'
Resolve "Union type option names collision when matching"

Closes #151

See merge request ligolang/ligo!457
2020-02-27 09:24:17 +00:00
Lesenechal Remi
a08adbd085 typer: checks for constructor redundancy 2020-02-26 18:54:16 +01:00
Sander Spies
1522a7d2e4 Update error.messages for PascaLIGO. 2020-02-26 15:07:14 +01:00
Christian Rinderknecht
623e16459f Changed Loop.continue to Loop.resume. 2020-02-26 13:36:50 +01:00
Christian Rinderknecht
31a39bffbc I upgraded the parsers to accept Map.map etc. I rewrote the doc except "reference" to promote and deprecate built-ins. 2020-02-25 18:07:53 +01:00
Christian Rinderknecht
656807b22e Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@doc 2020-02-25 17:09:19 +01:00
Christian Rinderknecht
f39ff186d6 Merge branch 'docs/current-reference' into 'dev'
Add Current reference page to docs

See merge request ligolang/ligo!381
2020-02-25 15:51:37 +00:00
Christian Rinderknecht
d7dd064095 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@doc 2020-02-25 16:40:23 +01:00
Lesenechal Remi
4c2529b83c allow constructor without parameters 2020-02-25 14:54:08 +01:00
John David Pressman
936418615e Add Current.x reference page to doc tests 2020-02-25 05:26:04 -08:00
John David Pressman
9daabd0abf Merge branch 'dev' into docs/current-reference 2020-02-25 05:14:09 -08:00
Christian Rinderknecht
f4d688df7b Fixed the tutorial. Enabled underscores in tez amounts. Fixed docs on
Tez and tuples (zero-indexation).
2020-02-21 17:16:53 +01:00
Rémi Lesenechal
040ed8b6ff Merge branch 'feature/subtler-nontail-fail' into 'dev'
Fix non-tail fail avoidance

See merge request ligolang/ligo!438
2020-02-21 13:50:25 +00:00
Christian Rinderknecht
f405f03740 Merge branch 'feature/dont-use-source' into 'dev'
Examples: don't use SOURCE

See merge request ligolang/ligo!444
2020-02-20 19:50:17 +00:00
Tom Jack
4b9e175063 Examples: don't use SOURCE 2020-02-20 12:18:57 -06:00
Tom Jack
23353b0e27 Clarify internal sender/source options 2020-02-20 12:17:31 -06:00
Tom Jack
01531ac307 Support lowercase in hex bytes 2020-02-20 12:07:01 -06:00
Tom Jack
4c53fa4ae6 Fix non-tail fail avoidance 2020-02-20 09:58:17 -06:00
Suzanne Dupéron
ce4c2ee783 Merge branch 'feature/ast-cleanup-ocaml-tuples' into 'dev'
AST cleanup + replace OCaml tuples with record in ast_typed

See merge request ligolang/ligo!429
2020-02-20 14:57:07 +00:00
Suzanne Dupéron
4f36ff3bcb Replace OCaml tuples with record in ast_typed 2020-02-20 14:21:30 +01:00
Suzanne Dupéron
ea74ed8a2c Normalize indentation etc. of ast_typed in preparation for the ADT generator 2020-02-20 14:21:30 +01:00
John David Pressman
62fe576bc9 Revert "Merge branch 'fix/pascal-tuples-in-doc' into 'dev'"
This reverts merge request !437
2020-02-20 05:25:30 +00:00
Rémi Lesenechal
e8129c5be3 Merge branch 'feature/variable-in-dry-run' into 'dev'
Allow using top level variables defined in source code in dry-run PARAMETER and STORAGE

See merge request ligolang/ligo!436
2020-02-19 20:41:37 +00:00
Pierre-Emmanuel Wulfman
8d01fcb9f7 Merge branch 'fix/pascal-tuples-in-doc' into 'dev'
Make Tuple in PascaLigo starting at one

See merge request ligolang/ligo!437
2020-02-19 17:15:29 +00:00
Pierre-Emmanuel Wulfman
0b10b7188b Merge branch 'test-contract-religo' into 'dev'
Multisig contract test for Cameligo and ReasonLigo

See merge request ligolang/ligo!421
2020-02-19 17:08:30 +00:00
Pierre-Emmanuel Wulfman
e1606c4700 add multisig test for cameligo and reasonligo 2020-02-19 16:40:55 +01:00
Pierre-Emmanuel Wulfman
dcb342e031 add primitive to cameligo 2020-02-19 16:40:55 +01:00
Pierre-Emmanuel Wulfman
b8af9a56d9 fix contract with tuples starting at one 2020-02-19 16:15:43 +01:00
Lesenechal Remi
44ff5d580d Allow using top level variables defined in source code in dry-run PARAMETER and STORAGE 2020-02-19 16:10:50 +01:00
Pierre-Emmanuel Wulfman
a6fc8a3f6a Merge branch 'for-loop-bugs' into 'dev'
For loop bugs fixed

See merge request ligolang/ligo!434
2020-02-19 15:08:01 +00:00
Pierre-Emmanuel Wulfman
eee6dbaeb2 make while_loop, for_int and for_collect more similar 2020-02-19 14:41:16 +01:00
John David Pressman
892f813a6c Merge branch 'contract/hashlock' into 'dev'
[LIGO-406] Hashlock contract

See merge request ligolang/ligo!359
2020-02-19 00:15:39 +00:00
Pierre-Emmanuel Wulfman
9de45285b2 remove Var.show 2020-02-18 14:19:11 +01:00
Pierre-Emmanuel Wulfman
c468cb94a1 remove unused code 2020-02-18 14:16:05 +01:00
Tom Jack
e262f9e103 Demonstrate a couple simple_for_collect bugs 2020-02-18 14:09:29 +01:00
Lesenechal Remi
38c99eca53 carthage: add tests for comparable pairs 2020-02-18 12:31:19 +01:00
Lesenechal Remi
fd28da98a0 comparable pairs in the backend 2020-02-18 12:19:19 +01:00
John David Pressman
b2c654ec65 Merge branch 'dev' into contract/hashlock 2020-02-17 20:51:31 -08:00
Lesenechal Remi
e63f2407c2 carthage update:
* update dune & opam files
* update modules in source
2020-02-17 13:10:51 +01:00
Tom Jack
9f09506f58 Fix literal bytes printing again 2020-02-15 11:50:20 -06:00
John David Pressman
eaa0c12d63 e_ez_record -> e_record_ez in hashlock contract tests 2020-02-13 22:00:25 -08:00
John David Pressman
741374fa24 Merge branch 'dev' into contract/hashlock 2020-02-13 21:59:54 -08:00
John David Pressman
5764f53ed1 Refactor commitment mechanism, add reveal tests to hashlock contract 2020-02-13 21:54:16 -08:00
Lesenechal Remi
39fc076c2b fix regression of comparison of key_hash and add a test for it 2020-02-13 16:44:21 +01:00
John David Pressman
f766840311 Fix commit test for hashlock 2020-02-13 04:35:21 -08:00
Suzanne Dupéron
a1880b013b Fix #147 by allowing comparison of bools 2020-02-12 20:22:59 +01:00
Suzanne Dupéron
2c03ebf2e3 Merge branch 'docs/list-reference' into 'dev'
Add list reference page to docs and add unit tests for List.size

See merge request ligolang/ligo!398
2020-02-12 16:12:21 +00:00
Suzanne Dupéron
da546eabb7 Merge branch 'docs/crypto-reference' into 'dev'
Add crypto reference page to doc tests

See merge request ligolang/ligo!410
2020-02-12 15:43:09 +00:00
Suzanne Dupéron
6be23179c6 Merge branch 'dev' into 'docs/list-reference'
# Conflicts:
#   src/test/contracts/list.ligo
#   src/test/md_file_tests.ml
2020-02-12 15:13:27 +00:00
John David Pressman
953e91bc54 Remove Current.gas from LIGO 2020-02-12 02:24:58 -08:00
John David Pressman
d12aa130f7 Add crypto reference page to doc tests 2020-02-11 18:47:54 -08:00
John David Pressman
f2b3e83986 Merge branch 'dev' into docs/map-reference 2020-02-11 17:56:21 -08:00
John David Pressman
1fe41b011b Merge branch 'docs/sets-reference' into 'dev'
Add set reference page to the docs

See merge request ligolang/ligo!373
2020-02-12 01:39:41 +00:00
John David Pressman
e8da2626e4 Add set reference page to the docs
Add Set.literal to the test suite
2020-02-12 01:39:41 +00:00
Suzanne Dupéron
437b696b19 Merge branch 'feature/some-new-typer-constant-contraints' into 'dev'
some more contraints (untested) for the typer

See merge request ligolang/ligo!404
2020-02-12 01:12:24 +00:00
Christian Rinderknecht
414dce2fc8 Merge branch 'docs/big-map-reference' into 'dev'
Add big map reference page to docs

See merge request ligolang/ligo!382
2020-02-11 18:24:41 +00:00
Rémi Lesenechal
8b83e375bd Revert "Merge branch 'feature/adt-generator-poly-3' into 'dev'"
This reverts merge request !403
2020-02-11 10:45:08 +00:00
Lesenechal Remi
702416a0a7 fix continuation and add some comments 2020-02-11 11:05:43 +01:00
John David Pressman
e0c5505886 Merge branch 'dev' into docs/big-map-reference 2020-02-11 01:07:32 -08:00
John David Pressman
39c0f01998 Add big_map reference page to doc tests and add big_map add to test suite 2020-02-11 01:03:46 -08:00
John David Pressman
bfd240dacf Merge branch 'dev' into docs/map-reference 2020-02-10 20:53:30 -08:00
John David Pressman
b6a6eea5d2 Add map reference page to doc tests and fix bugs 2020-02-10 20:51:48 -08:00
Suzanne Dupéron
0113a448de Merge branch 'dev' into 'feature/doc-pascaligo-loop'
# Conflicts:
#   src/passes/operators/operators.ml
2020-02-10 20:51:41 +00:00
Suzanne Dupéron
76fa4b0549 Revert "Make menhir less verbose, to see error messages in gitlab."
This reverts commit b5f3ae76b049d4e712bd539b39d771191bc8978b.
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
c71e47f252 Make menhir less verbose, to see error messages in gitlab. 2020-02-10 20:40:43 +01:00
Suzanne Dupéron
5151a0fd92 ADT generator: polymorphic types (list, option…) 2020-02-10 20:40:43 +01:00
Suzanne Dupéron
2588de2395 Remove generated file fold.ml 2020-02-10 20:40:43 +01:00
Suzanne Dupéron
c3b1c1ac0f Removed promote-until-clean because it moves the file out of _build instead of copying it, which causes issues for the gitlab build 2020-02-10 20:40:43 +01:00
Suzanne Dupéron
76ad9c47ec cleanup 2020-02-10 20:40:43 +01:00
Suzanne Dupéron
42699256e5 Run adt_generator.exe as part of dune runtest 2020-02-10 20:40:43 +01:00
Lesenechal Remi
87a8901645 review fixes 2020-02-10 20:02:43 +01:00
Lesenechal Remi
f798392760 constant typer:
* Removed unused LIST_CONS
* support for misc constants (untestetable for now)
2020-02-10 19:54:23 +01:00
Christian Rinderknecht
9b5d63de1f Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts 2020-02-10 19:33:04 +01:00
Christian Rinderknecht
541728fc6c First batch of rewritten contracts (PascaLIGO). 2020-02-10 19:27:58 +01:00
Christian Rinderknecht
61832354d9 Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-10 19:22:52 +01:00
Christian Rinderknecht
82aacde97f More documentation rewrites. 2020-02-10 19:07:20 +01:00
Lesenechal Remi
8c38352290 ligo interpreter : adding more tests 2020-02-10 12:02:36 +01:00
Lesenechal Remi
0e5a68d58b ligo interpreter : review fixes 2020-02-09 19:04:21 +01:00
Lesenechal Remi
3ce0d180f5 ligo interpreter: simplfied AST merge 2020-02-09 18:50:18 +01:00
Lesenechal Remi
ce70c82122 ligo interpreter : moving combinators do a dedicated module 2020-02-09 18:22:33 +01:00
Lesenechal Remi
69ddce1860 add temporary CLI comand for ligo interpreter tests 2020-02-09 18:22:33 +01:00
Lesenechal Remi
0374c5900b add missing 'Set.iter' to cameligo 2020-02-09 18:22:33 +01:00
Lesenechal Remi
f08879feb0 ligo interpreter support for :
* operations of map/set
* slice
* add
* literals/pps
2020-02-09 18:22:33 +01:00
Lesenechal Remi
29959ec915 Initial LIGO interpreter version 2020-02-09 18:22:33 +01:00
Suzanne Dupéron
995ca7e807 Print numeric records as tuples, better typer error messages for records & tuples 2020-02-09 00:31:30 +01:00
Pierre-Emmanuel Wulfman
199e0a3bb2 Print records and variants in lexicographic order 2020-02-09 00:31:30 +01:00
Pierre-Emmanuel Wulfman
ae82144418 removing assign, tuples, sequences, 2020-02-09 00:31:30 +01:00
Christian Rinderknecht
e6dc4371ee Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-08 10:16:34 +01:00
John David Pressman
8db8f6f039 Add list reference page to docs and add unit tests for List.size 2020-02-07 20:17:13 -08:00
John David Pressman
ebf258d128 Merge branch 'docs/string-reference' into 'dev'
Add string reference page to docs

See merge request ligolang/ligo!392
2020-02-07 23:01:25 +00:00
Lesenechal Remi
5ef61d3520 add assert primitive for pascaligo 2020-02-07 15:28:46 +01:00
Lesenechal Remi
54f4ffd413 Fix assetion with a default string "failed assertion" 2020-02-07 15:27:16 +01:00
John David Pressman
4c45eb9fb3 Add string reference page to docs 2020-02-07 05:27:23 -08:00
Sander
bd4a75016d Merge branch 'add_lsl_lsr' into 'dev'
Add lsl and lsr support.

Closes #146

See merge request ligolang/ligo!387
2020-02-07 11:08:13 +00:00
Sander Spies
560ae6e0bc Remove block skips. 2020-02-07 11:10:47 +01:00
Rémi Lesenechal
8003a9e2b1 Merge branch 'feature/remove-useless-constants' into 'dev'
Remove useless constants

See merge request ligolang/ligo!388
2020-02-06 21:26:04 +00:00
Suzanne Dupéron
d3a34445f4 Merge branch 'bugfix/new-typer-9' into 'dev'
New typer: constants: use a tuple of arguments, + typechecking rules for constants

See merge request ligolang/ligo!378
2020-02-06 20:56:04 +00:00
Lesenechal Remi
78693b482c remove unused test 2020-02-06 18:12:44 +01:00
Lesenechal Remi
784c2da81b Remove useless constants:
* C_HASH (removed)
* C_MAP_GET --replaced--> C_MAP_FIND_OPT
* C_MAP_GET_FORCE --replaced--> C_MAP_FIND
2020-02-06 18:08:51 +01:00
Sander Spies
e14dd18680 Correction: lsl and lsr are impure 2020-02-06 17:30:50 +01:00
Sander Spies
9433fa9bc4 Add lsl and lsr support. 2020-02-06 16:17:33 +01:00
Christian Rinderknecht
61ec0f41c3 Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-05 20:02:06 +01:00
Christian Rinderknecht
26059c281a Forgot to check that function parameters are not reserved names. 2020-02-05 18:09:45 +01:00
Christian Rinderknecht
7a484cb45c Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-05 16:29:37 +01:00
Christian Rinderknecht
410bbb0723 Complete rewrite of the documentation. 2020-02-05 16:28:40 +01:00
John David Pressman
59448e1d91 Add partial draft of Current library documentation and unit tests for Current.amount 2020-02-04 20:27:56 -08:00
Sander Spies
79fd0317ae Merge 2020-02-04 15:05:13 +01:00
Pierre-Emmanuel Wulfman
cf7bc9374d Merge branch 'feature/get_contract_opt' into 'dev'
add get_contract_opt and get_entrypoint_opt to ligo

See merge request ligolang/ligo!362
2020-02-04 13:36:22 +00:00
Sander Spies
0f9b92b83f Oops. 2020-02-04 14:02:57 +01:00
Pierre-Emmanuel Wulfman
7c4871babc add test 2020-02-04 13:38:17 +01:00
Pierre-Emmanuel Wulfman
4195026d73 add get_contract_opt and get_entrypoint_opt to ligo 2020-02-04 13:38:17 +01:00
Sander Spies
795f0d4056 ReasonLIGO: missing ')' error message. 2020-02-04 13:31:41 +01:00
Sander Spies
3461af53dd ReasonLIGO: Make the semicolon optional in more cases. 2020-02-04 12:52:12 +01:00
Sander
fbc61eb809 Optional vbar for ReasonLIGO sumtypes 2020-02-04 10:39:15 +00:00
Suzanne Dupéron
0297b6033b New typer: constants: use a tuple of arguments, + typechecking rules for constants 2020-02-03 20:20:00 +00:00
Suzanne Dupéron
d2630379ec Merge branch 'bugfix/new-typer-8' into 'dev'
misc. fixes on the new typer

See merge request ligolang/ligo!369
2020-02-03 19:48:49 +00:00
Christian Rinderknecht
d92a5499e1 Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-03 14:18:06 +01:00
Sander Spies
e92d16fd79 Simplify error case. 2020-02-03 14:03:47 +01:00
Sander Spies
bbe80bcbfb Merge. 2020-02-03 14:01:01 +01:00
Christian Rinderknecht
5293fa3572 Merge branch 'fix-reasonligo-wrongfunctionarguments-error' into 'dev'
Correct wrong function arguments error message

See merge request ligolang/ligo!375
2020-02-03 11:34:06 +00:00
Sander Spies
98dab8d491 Extra line. 2020-02-03 11:57:37 +01:00
Sander Spies
1146292a76 Argh 2020-02-03 11:26:23 +01:00
Sander Spies
a0ffc441f3 Forgot to add these. 2020-02-03 11:25:13 +01:00
Sander Spies
bf985797fb - Don't allow to chain let bindings like: let a = let b = 2.
- Give a proper warning when creating an incorrect let binding.
2020-02-03 10:53:44 +01:00
Sander Spies
952e291066 Typo 2020-02-03 10:06:28 +01:00
Sander Spies
c1f5080b81 Spacing. 2020-02-03 09:30:42 +01:00
Christian Rinderknecht
87aa50f097 Merge branch 'docs/bytes-reference' into 'dev'
Add bytes reference page to docs

See merge request ligolang/ligo!371
2020-02-02 19:29:18 +00:00
Sander Spies
360ee7b45e Wrong extension 2020-02-02 20:07:19 +01:00
Sander Spies
6beccd09a8 Wrong function arguments error message. 2020-02-02 18:08:16 +01:00
Christian Rinderknecht
e6119db35a Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-01 15:09:04 +01:00
John David Pressman
6d421ab4b1 Add Map.add to test suite 2020-01-31 17:13:22 -08:00
Sander Spies
bc9cb36d97 Typo. 2020-01-31 19:31:51 +01:00
Sander Spies
6c3879403b Enable incremental parser by default \o/
Fix test.
2020-01-31 17:45:48 +01:00
Sander Spies
ff16af9331 Merge 2020-01-31 16:06:47 +01:00
Sander Spies
c3cb69a0d0 Move error.messages handling to dune. 2020-01-31 16:05:59 +01:00
Christian Rinderknecht
e25bb00961 Forgot to add those fixes to the previous commit. 2020-01-31 14:11:56 +01:00
Christian Rinderknecht
729ecd3f12 Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-01-31 13:30:28 +01:00
John David Pressman
c8e0654ffe Add crypto reference page to docs
Change 'black2b' to 'blake2b' in CameLIGO/ReasonLIGO frontend
2020-01-31 03:34:36 -08:00
Christian Rinderknecht
a9b3d295fd Fixes to the lexer and the parser API.
* The parameter for logging the lexer is now mandatory.
  * The ParserAPI now thread the logging of the lexer.
  * LexerMain.ml now call the logging of the lexers (CameLIGO, ReasonLIGO).
  * Fixed bug in lexer when a line comment ends with EOF.
2020-01-31 12:31:25 +01:00
Christian Rinderknecht
fa9372c595 Updated ParErr.ml for ReasonLIGO (may have caused Not_found). 2020-01-31 12:24:25 +01:00
John David Pressman
e127528e95 Add bytes reference page to docs 2020-01-30 12:13:24 -08:00
Suzanne Dupéron
0abc4cd206 Started adding typer for constants 2020-01-30 18:50:19 +00:00
Suzanne Dupéron
a6f0d7297c Improved temporary internal error message 2020-01-30 18:50:19 +00:00
Suzanne Dupéron
96468bd8ff Disabled conversion of records & variants to type constructor + argument list in new typer, the current implementation is just wrong. 2020-01-30 18:50:19 +00:00
Suzanne Dupéron
7ab2ffa156 New typer: fix tuples 2020-01-30 18:50:19 +00:00
Sander
6551168a56 ReasonLIGO type declaration improvements for tuples and function arguments.
CameLIGO tests for tuples and function arguments.
2020-01-30 17:38:01 +00:00
Tom Jack
780e8e956c Merge branch 'bugfix/religo-missing-in-some-docs' into 'dev'
Updated some docs that did not include reasonligo / .religo yet

See merge request ligolang/ligo!368
2020-01-29 19:57:01 +00:00
Suzanne Dupéron
8eb6472b00 Updated some docs that did not include reasonligo / .religo yet 2020-01-29 18:02:55 +00:00
Suzanne Dupéron
c534d6dff2 Cleanup 2020-01-29 17:37:10 +00:00
Suzanne Dupéron
821c980e3e documentation for Declaration_constant 2020-01-29 17:36:34 +00:00
Christian Rinderknecht
a6bf16cbe2 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-29 16:49:42 +01:00
Suzanne Dupéron
5ff9803989 Merge remote-tracking branch 'origin/dev' into dev 2020-01-28 22:30:31 +00:00
Suzanne Dupéron
a9a12ae244 Changes requested in MR review 2020-01-28 20:23:11 +00:00
Pierre-Emmanuel Wulfman
f36d6a01de Modify record update, using path for update 2020-01-28 14:12:46 +00:00
Christian Rinderknecht
a29b5acb31 Finished refactoring the front-end. 2020-01-27 17:28:31 +01:00
Christian Rinderknecht
8047e98124 WIP: Refactoring of the front-end. 2020-01-27 16:36:04 +01:00
Suzanne Dupéron
1734d31a41 Merge branch 'dev' of gitlab.com:ligolang/ligo into dev 2020-01-27 15:10:30 +00:00
Christian Rinderknecht
fc3385389b [WIP] Refactoring the front-end. 2020-01-27 16:05:47 +01:00
Christian Rinderknecht
0131b0c23d Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-27 13:00:18 +01:00
Rémi Lesenechal
334deea8ec Merge branch 'feature/fix-compile-storage' into 'dev'
fix bad copy paste ?

See merge request ligolang/ligo!360
2020-01-27 11:38:30 +00:00
Lesenechal Remi
088c5560c4 test for compile-storage 2020-01-27 11:42:32 +01:00
Lesenechal Remi
1a6a682584 fix bad copy paste ? 2020-01-27 11:36:51 +01:00
John David Pressman
e025eab45d [LIGO-269] ID Layer Contract 2020-01-24 22:52:06 +00:00
John David Pressman
62a4482ff3 Change commit.salted_hash to be hash, reorder salt in tests, still failing 2020-01-24 13:28:02 -08:00
Christian Rinderknecht
8843a46975 Added missing check for reserved names in CameLIGO.
The calls to the lexer and parser of CameLIGO through the compiler use
now their error messages, like in PascaLIGO.
2020-01-24 15:57:41 +01:00
Christian Rinderknecht
3c9dd93c8b Fixed again priority of "->" vs "*" in type expressions.
Fixed negative tests.
2020-01-24 14:35:15 +01:00
Christian Rinderknecht
47a41971d7 Fixed the parsing of [a * b -> c] as [(a * b) -> c]. 2020-01-24 14:15:07 +01:00
Christian Rinderknecht
1a1a8d986c Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-24 14:04:25 +01:00
Christian Rinderknecht
e85486eae4 Improved slightly the formatting of some error messages.
Fixed the bug in the parser: I wrongly closed [stdout].
2020-01-24 14:03:25 +01:00
John David Pressman
13de36d6db Merge branch 'contract/timelock-repeat' into 'dev'
[LIGO-410] Contract/timelock repeat

See merge request ligolang/ligo!353
2020-01-24 12:01:15 +00:00
Christian Rinderknecht
41d6956b66 [WIP] Added traces to debug 2020-01-24 12:56:05 +01:00
John David Pressman
3a320c26c8 Modify hashlock to use commit-reveal and add non-working commit test 2020-01-24 03:29:00 -08:00
John David Pressman
98f85bb2fe Merge branch 'dev' into contract/hashlock 2020-01-24 02:49:53 -08:00
Lesenechal Remi
ba0548d6b8 some list-declarations tests 2020-01-23 22:12:33 +01:00
Lesenechal Remi
fd47f51031 add a new CLI command: list-declarations 2020-01-23 22:12:33 +01:00
Christian Rinderknecht
4f4294bf56 Refactoring of the front-end towards integration of the local builds
and the globol build, using the parser error messages, for instance.
2020-01-23 18:28:04 +01:00
John David Pressman
0636994ffb Fix interval advance test for repeating time lock contract 2020-01-23 08:32:43 -08:00
Lesenechal Remi
69d125b667 fix evaluate-value and added tests 2020-01-23 14:29:04 +01:00
Suzanne Dupéron
1592404e03 Merge commit '4977c18e' into bugfix/new-typer 2020-01-23 11:56:02 +01:00
Suzanne Dupéron
4977c18e05 Fixed semantic conflict (split bytes into several constructor functions) 2020-01-23 11:43:43 +01:00
John David Pressman
f166748757 Merge branch 'gardening/e-bytes-split' into 'dev'
[LIGO-374] Split e_bytes into e_bytes_hex, e_bytes_raw and e_bytes_string

See merge request ligolang/ligo!336
2020-01-23 08:35:30 +00:00
John David Pressman
d260e831d1 Add failing interval advance test for repeating timelock contract 2020-01-22 23:05:41 -08:00
John David Pressman
eba4901a76 Merge branch 'docs/update-front-page-examples-2' into 'dev'
Update CameLIGO and ReasonLIGO examples on front page so they're usable in the IDE

See merge request ligolang/ligo!347
2020-01-23 03:19:46 +00:00
Suzanne Dupéron
ef6f46db5b typer: bugfix: stray leftover attempt to typecheck the old way in the new typer 2020-01-22 15:30:38 +01:00
Suzanne Dupéron
c5190ac91d typer: bugfix: missing case for E_skip 2020-01-22 15:30:29 +01:00
Suzanne Dupéron
d97044b581 typer: bugfix: arrow is now a built-in type constructor 2020-01-22 15:30:18 +01:00
Suzanne Dupéron
0f420eaaf5 typer: bugfix: tuple is now a built-in type constructor 2020-01-22 15:17:10 +01:00
Suzanne Dupéron
30dac09494 typer: bugfix: use "String.equal", not "=" 2020-01-22 13:49:32 +01:00
Suzanne Dupéron
77fdb739b6 typer: typecheck expression and subst (used e.g. to typecheck arguments of contracts) 2020-01-22 13:49:32 +01:00
Christian Rinderknecht
a2a35cc953 Fixed helpers.ml and promoted negative test of reserved name for PascaLIGO. 2020-01-22 12:47:11 +01:00
Christian Rinderknecht
d46d95ee90 Fixed CameLIGO parsing of -> vs *
Fixed reserved_name.ligo ("arguments" instead of "args").
2020-01-22 12:33:29 +01:00
John David Pressman
9781a1c8ff Add rough draft of repeating timelock contract 2020-01-22 03:01:21 -08:00
Christian Rinderknecht
7437d6ae1a Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-22 11:43:35 +01:00
John David Pressman
b50479b96b Merge branch 'docs/michelson-specific' into 'dev'
[LIGO-358] Add Tezos-specific LIGO features docs

See merge request ligolang/ligo!335
2020-01-22 09:58:46 +00:00
John David Pressman
d878387424 Add salt to hashlock contract 2020-01-22 01:40:23 -08:00
John David Pressman
7756bfda93 Add rough draft of hashlock contract 2020-01-22 01:30:04 -08:00
John David Pressman
69ee6d0521 Update CameLIGO and ReasonLIGO examples on front page so they're usable in the IDE 2020-01-21 14:49:42 -08:00
Sander Spies
da53758d85 Merge 2020-01-21 21:26:52 +01:00
Sander Spies
f104b5e512 Handle parentheses when destructuring. 2020-01-21 21:23:31 +01:00
Lesenechal Remi
8237947c4d monad fix 2020-01-21 19:04:51 +01:00
Christian Rinderknecht
786b183d40 [WIP]
* Reverted [pos.mli] to the previous signature, except [Pos.min]
  that now takes a labelled parameter [file].
* Reverted [ParserAPI.ml] to the previous signature.
* Reexported [shor_error] in [ParserUnit].
* Changed the modules [LexToken] so that they export one function
  to make attributes, the first, additional paramater being "[@"
  or "[@@" (and invalid in PascaLIGO).
* Added support in all [ParserLog] for attributes (pretty-printings).
* Added AST nodes [Attr] and [AttrDecl] to PascaLIGO. The simplifier
  takes care of hooking them with their respective declarations
  or discarding them. (In the future, we should issue a warning for detached
  attributes.)
2020-01-21 18:35:36 +01:00
Sander Spies
483f591f62 Typo 2020-01-21 14:57:13 +01:00
Pierre-Emmanuel Wulfman
5ba2144f0f Merge branch 'new-typer-bugfix1' into 'dev'
Implemented some missing cases of the subst in the new typer.

See merge request ligolang/ligo!334
2020-01-21 13:53:27 +00:00
Sander Spies
95205609f8 Merge. 2020-01-21 14:14:23 +01:00
Lesenechal Remi
a2c51ddbcf better description for bad_contract error message 2020-01-21 13:26:38 +01:00
Lesenechal Remi
f1977b12aa self in lambda negative test 2020-01-21 13:26:38 +01:00
Lesenechal Remi
57aeb4e931 detect self_address when not at top level 2020-01-21 13:26:38 +01:00
Suzanne Dupéron
93d16b4b6a typer: do multiple substitutions at once (pass a sort of map from free variables to their substitution) 2020-01-21 13:25:04 +01:00
Sander
3223f9cfe1 Add sub commands to print different stages. 2020-01-21 12:24:51 +00:00
John David Pressman
c811f0058e Change 'touples' to 'tuples' in docs 2020-01-21 03:13:57 -08:00
John David Pressman
dd44c0d621 Add self_address docs, fix warning for PACK and UNPACK 2020-01-21 02:45:38 -08:00
John David Pressman
44dd39dcb2 Fix examples on front page of ligolang.org, add reminder to change in future 2020-01-20 19:42:22 -08:00
Suzanne Dupéron
614970d2d7 Implemented some missing cases of the subst. First kinda actual typer test passes! 2020-01-20 21:19:37 +01:00
Suzanne Dupéron
688a636251 typer: cleanup 2020-01-20 21:19:37 +01:00
Sander Spies
e959ef4f6f Forgot to add test file. 2020-01-20 19:04:02 +01:00
Sander Spies
fbb622cc03 Add support for tuple destructuring in ReasonLIGO 2020-01-20 19:03:00 +01:00
Christian Rinderknecht
8384e3d1f7 [WIP] Refactoring of front-end. 2020-01-20 10:57:07 +01:00
Christian Rinderknecht
673b54e6ae Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-18 11:37:36 +01:00
Lesenechal Remi
a30d59121f review request (more regular output) 2020-01-17 17:02:54 +01:00
Lesenechal Remi
3081ec477b add test & promote 2020-01-17 16:35:53 +01:00
Lesenechal Remi
600ee51940 running contract or function does not fail on failwiths 2020-01-17 16:35:40 +01:00
Lesenechal Remi
0ad8bde6d1 add missing newlines 2020-01-17 16:29:23 +01:00
John David Pressman
d6000be369 Add ReasonLIGO CHECK_SIGNATURE test to suite 2020-01-17 01:57:07 -08:00
John David Pressman
eea8e30e87 Add CameLIGO CHECK_SIGNATURE test to suite 2020-01-17 01:53:22 -08:00
John David Pressman
eb4336b0e7 Add PascaLIGO CHECK_SIGNATURE test to suite 2020-01-17 01:50:06 -08:00
John David Pressman
4835ac4d10 Split e_bytes into e_bytes_hex, e_bytes_raw and e_bytes_string 2020-01-16 22:46:28 -08:00
John David Pressman
411c17eb99 Add ReasonLIGO version of key_hash test 2020-01-16 21:45:40 -08:00
John David Pressman
4fcfa3df8f Add CameLIGO key_hash test 2020-01-16 21:37:29 -08:00
John David Pressman
4ee3a29a34 Enable CameLIGO bytes_unpack test and add one for ReasonLIGO 2020-01-16 20:59:26 -08:00
John David Pressman
ca1caf2e61 Add bytes_unpack test for CameLIGO 2020-01-16 20:27:50 -08:00
Sander
88159e15b2 Add inline attribute 2020-01-16 19:36:04 +00:00
Christian Rinderknecht
5972d1d988 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-14 18:37:17 +01:00
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