Commit Graph

1168 Commits

Author SHA1 Message Date
gluax
7031923921 clean up comments 2021-04-19 14:36:56 -04:00
gluax
8c497f0b7a more test coverage 2021-04-19 13:53:49 -04:00
gluax
f7ec5de7c9 fix address in test 2021-04-15 17:08:30 -04:00
gluax
0016a1beaa update to lastest master, with FormatString rename 2021-04-15 16:55:48 -04:00
howardwu
4eac040178 chore(leo): bump version for new release 2021-04-15 13:49:42 -07:00
Collin Chin
5f46ccc026
Merge pull request #869 from AleoHQ/bug/calling-mut-method-from-immutable-context
bug-fix-852
2021-04-15 11:51:11 -07:00
gluax
59f86c4b34 fix call for immutable context, add it to test 2021-04-15 14:34:22 -04:00
gluax
2f7ed99f76 pull max's required semi-colon branch to ensure sameness, MD file renamed to readme 2021-04-14 18:38:49 -04:00
Protryon
df60874da9 fix tests 2021-04-14 15:27:57 -07:00
Protryon
51920b5df7 require semicolons on return 2021-04-14 15:27:57 -07:00
gluax
6e595bd845 remove escaped double quote for now, address(...) removed 2021-04-14 17:43:02 -04:00
gluax
1803925b08 semi-colon after return statements are required 2021-04-14 16:59:07 -04:00
gluax
11c78da916 formatted string -> renamed format string 2021-04-14 16:15:27 -04:00
gluax
1231c5bc36 clippy fix 2021-04-14 16:03:53 -04:00
gluax
91634d6479 implicit input, removed from function input 2021-04-14 16:00:19 -04:00
damirka
fbe10b3aaf adds empty line to leo example 2021-04-14 20:06:14 +03:00
gluax
eaa07934ed resolve merge conflicts 2021-04-14 12:51:20 -04:00
damirka
794e0f1095 adds test for that scenario 2021-04-14 18:09:52 +03:00
Collin Chin
4ae6de4978
Add clippy flag 2021-04-13 15:22:31 -07:00
Collin Chin
e9988e9713
Add clippy flag 2021-04-13 15:22:01 -07:00
gluax
dc5d75da85 some clean up 2021-04-13 15:33:00 -04:00
gluax
a54488b45f use stage macro for cleaner type inference 2021-04-13 13:49:16 -04:00
gluax
fdf54ea9a1 make macro to make this easier 2021-04-13 13:36:16 -04:00
gluax
61e791c671 type inference tests 2021-04-13 11:52:01 -04:00
gluax
f612ed441a type inference, and canonicalization bug fixes 2021-04-12 16:21:44 -04:00
gluax
214d9e0f8c More generic errors for reducing 2021-04-12 12:33:06 -04:00
gluax
29b8b2e301 add another test for tuple defined arrays 2021-04-12 11:47:19 -04:00
gluax
2bb85f52c1 quick fix, it's in order in this location not reversed, add tests 2021-04-09 22:52:14 -04:00
damirka
1e1697b7fe Merge branch 'master' into feature/opti-cli-flag 2021-04-10 00:33:19 +03:00
howardwu
62ee4c3b8b chore(leo): bump version for new release 2021-04-09 14:08:52 -07:00
gluax
bddcef732f merge master, clean up reducer and directors 2021-04-09 12:48:59 -04:00
gluax
f963782d90 some bug fixing 2021-04-08 17:56:56 -04:00
gluax
cb2f77c7e4 program in, time to test 2021-04-08 16:36:37 -04:00
gluax
97b434986d statements 2021-04-08 16:06:44 -04:00
Collin Chin
23bca1e595
Merge pull request #796 from ljedrz/align_integers_with_snarkvm
Align with snarkVM's Integer changes
2021-04-07 15:28:39 -07:00
gluax
55dae9bc14 push some expression solving, start statements 2021-04-07 13:21:10 -04:00
damirka
8ac7440daa adds test, expects asg error 2021-04-07 20:20:58 +03:00
ljedrz
dee5f7dc15 fix: use a hand-written impl of get_index
Signed-off-by: ljedrz <ljedrz@gmail.com>
2021-04-07 10:01:26 +02:00
ljedrz
670e3c0b47 deps: update snarkVM
Signed-off-by: ljedrz <ljedrz@gmail.com>
2021-04-07 10:01:26 +02:00
ljedrz
74f02411e8 fix: align with snarkVM's Integer changes
Signed-off-by: ljedrz <ljedrz@gmail.com>
2021-04-07 10:01:26 +02:00
gluax
ac9414590f reduce type and the basis for type_inference ast 2021-04-06 17:09:36 -04:00
gluax
541b83d492 working on directing expressions so far 2021-04-06 14:07:37 -04:00
Collin Chin
ea5bc5d693
Merge pull request #825 from AleoHQ/bug/815-mutable-method-imuttable-context
Bug/815 mutable method imuttable context
2021-04-05 21:12:39 -07:00
Collin Chin
f3f569b233
Merge pull request #824 from AleoHQ/feature/no-space-between-literals
Feature/no space between literals
2021-04-05 21:11:57 -07:00
gluax
38c36cc305 tests for all the integers 2021-04-05 12:59:08 -04:00
gluax
f0ce9d400e testing the changes 2021-04-05 12:54:27 -04:00
damirka
2578be4287 fix test 2021-04-05 19:37:16 +03:00
damirka
03b2af4aaa Merge branch 'master' into unused-code-bye-bye 2021-04-05 16:40:30 +03:00
damirka
a588c18100 clippy 2021-04-05 16:39:38 +03:00
damirka
044dc96e58 adds tests for outputfile 2021-04-05 16:08:54 +03:00
gluax
f44dcc1e96 test for bug 2021-04-02 04:50:14 -04:00
gluax
dc8a04e872 fix test 2021-03-31 14:59:45 -04:00
gluax
24e5d5365b resolve all the merge conflicts 2021-03-31 14:08:38 -04:00
damirka
41600d0261 removed unused errors in compiler 2021-03-31 18:06:22 +03:00
gluax
34f0f1519a merge latest abnf branch 2021-03-30 19:38:37 -04:00
Collin Chin
bb8534bad1
Merge pull request #801 from ljedrz/dedup_code
Deduplicate code in Integer::allocate_type
2021-03-30 15:24:35 -07:00
collin
5bfca36fc7 fix array indexing bug and add test 2021-03-30 14:28:22 -07:00
Protryon
426cfbc88c address todos 2021-03-29 15:57:17 -07:00
Protryon
a763075e99 runtime array indexing 2021-03-29 14:16:53 -07:00
collin
9be13dfd51 update comments 2021-03-29 12:12:38 -07:00
collin
6774cbb01c fix canonicalization tests 2021-03-29 11:24:58 -07:00
gluax
e1a0838888 global consts work, time to add them to reducers and phases 2021-03-29 12:55:49 -04:00
damirka
c21114c161 adds compiler optimizations flags to build and other commands
- optimizations can either be turned all together or specified
- removed deprecated clippy rules, followed clippy
- removed library file logic from build command, we don't have libraries
2021-03-28 19:28:00 +03:00
damirka
5fdf86f415 added compiler options to constructor and factory methods 2021-03-28 17:49:49 +03:00
gluax
dadb518598 forgot to update test json 2021-03-26 17:14:37 -04:00
gluax
3e912ef165 access member fix 2021-03-26 17:02:59 -04:00
gluax
871e52006b quick bug fix 2021-03-26 16:51:03 -04:00
gluax
dd06df4b1d it almost fully works, need to fix arrays, circuits and function calls 2021-03-26 15:47:11 -04:00
gluax
406692c2aa merge master, next is parser 2021-03-26 12:07:48 -04:00
Protryon
63d1b1005f format 2021-03-26 05:19:42 -07:00
Protryon
5985d8da41 tendrilize spans 2021-03-26 05:18:55 -07:00
collin
dcc2844a50 fix canonicalization test 2021-03-25 22:52:58 -07:00
collin
6a1afdabb7 Merge branch 'master' of https://github.com/AleoHQ/leo into feature/constant-mutable-declarations 2021-03-25 22:46:11 -07:00
collin
28bca20b97 pray to the clippy gods (allow upper case acronyms in state module) 2021-03-25 16:03:32 -07:00
collin
ef8517b8ce allow clippy warns 2021-03-25 15:51:46 -07:00
gluax
c78ab699b8 another test 2021-03-25 16:52:43 -04:00
gluax
793cbb9f27 add test for const self, no clippy issues locally 2021-03-25 14:30:06 -04:00
gluax
696825eb6a asked for refactors started, this will fail tests 2021-03-25 13:48:47 -04:00
gluax
3efc705a8c fix tests merged from master 2021-03-25 11:19:42 -04:00
gluax
ab32aeb342 merge master 2021-03-24 15:13:53 -04:00
Collin Chin
94e7509690
Merge pull request #784 from AleoHQ/dead-code-elimination
Dead code elimination
2021-03-23 16:26:22 -07:00
collin
113ba12959 add tests for dead code elim 2021-03-23 15:49:56 -07:00
collin
99efdf00cb add comments to asg passes 2021-03-23 15:33:13 -07:00
Collin Chin
46220aa889
Merge pull request #761 from AleoHQ/feature/const-inputs
[Feature, Compiler] Adds constant inputs
2021-03-23 15:19:44 -07:00
collin
3a6ca5018d edit main input comments 2021-03-23 14:44:16 -07:00
collin
8172d73a71 fix bit not error 2021-03-23 14:38:20 -07:00
collin
68afcadfa4 update error descriptions 2021-03-23 14:36:22 -07:00
gluax
0ea4f1e0e3 const_ self as function input properly 2021-03-23 11:49:27 -04:00
ljedrz
d14edcb4cd refactor: use a macro to deduplicate code in Integer::allocate_type
Signed-off-by: ljedrz <ljedrz@gmail.com>
2021-03-23 11:24:47 +01:00
collin
ae9ba51b7d update pedersen hash example to use constant inputs 2021-03-22 15:24:32 -07:00
gluax
2c6a34fea7 test that was failing coverage only existed on master 2021-03-22 11:47:34 -04:00
gluax
ef43230e98 merge master and see if it fixes coverage ci 2021-03-22 11:38:19 -04:00
Max Bruce
d120e90d6e
Merge branch 'master' into dead-code-elimination 2021-03-22 07:04:38 -07:00
gluax
1d9befc0ac function input mutable by default 2021-03-19 11:30:24 -04:00
damirka
b5ae4e1ca4 extended errors, added more error cases 2021-03-19 15:15:06 +03:00
gluax
b50919085b deprecate let mut, undeprecate const, let is now mutable by default 2021-03-18 15:19:07 -04:00
collin
f1f8b99690 add passing iteration test with loop variable 2021-03-17 12:35:16 -07:00
gluax
dceb8a9744 fix Self inside of circuit giving an error, tests 2021-03-17 14:33:04 -04:00
damirka
0eb7b972c7 Merge branch 'master' into feature/const-inputs 2021-03-17 20:54:52 +03:00
damirka
2862549603 removed unwraps 2021-03-17 13:23:58 +03:00
gluax
e9bc1159ff merge master and fix last bug 2021-03-16 17:28:59 -04:00
gluax
6ffcb48822 asg now handles Circuit name in Circuit name, some bug fixes 2021-03-16 16:49:18 -04:00
damirka
60519275c9 added test for non const input as const 2021-03-16 23:18:10 +03:00
collin
0a28945262 Merge branch 'master' of https://github.com/AleoHQ/leo into dead-code-elimination 2021-03-16 12:19:01 -07:00
collin
078f0b4351 Merge branch 'master' of https://github.com/AleoHQ/leo into fix/const-loop-range 2021-03-16 12:18:15 -07:00
damirka
8c228cc6b7 forced const inputs for const variables 2021-03-16 20:37:27 +03:00
damirka
037851e703 Merge branch 'master' into feature/const-inputs 2021-03-16 16:34:29 +03:00
damirka
40f4b1cb65 covered type mismatch in constant inputs 2021-03-16 16:32:55 +03:00
howardwu
0a324ec817 Fix merge conflict with master 2021-03-15 21:14:04 -07:00
howardwu
284bee6fe8 Update to ToBitsBEGadget, update to snarkVM v0.2.1 2021-03-15 21:02:03 -07:00
damirka
a516f36e4f remove pub visibility in program_input 2021-03-16 00:50:04 +03:00
damirka
2508ec7ef1 array dimensions check added, const tuples added 2021-03-15 22:58:34 +03:00
gluax
7d2a71c668 Merge master 2021-03-15 13:52:51 -04:00
gluax
ac13542638 Proper Errors 2021-03-15 13:37:23 -04:00
damirka
258255102a expect fail in mismatch 2021-03-15 17:09:50 +03:00
damirka
229141a06e Merge branch 'master' into feature/const-inputs 2021-03-15 16:45:30 +03:00
damirka
b58db80005 updates after @collinc97 comments 2021-03-15 16:29:45 +03:00
Protryon
5f79a261e7 add cond_mut test 2021-03-13 07:02:18 -08:00
Protryon
ba9444ecc4 dead code elimination pass 2021-03-13 06:58:09 -08:00
Collin Chin
1c15fb5eff formatting 2 2021-03-12 21:13:17 -08:00
Collin Chin
45316e90d9 formatting 2021-03-12 21:02:38 -08:00
Collin Chin
712d2fbd02 add test for non-constant loop ranges 2021-03-12 20:39:58 -08:00
Collin Chin
6ce003fd6c fix program parsing formatted errors 2021-03-12 20:35:34 -08:00
collin
e369cb7049 remove leo-gadgets crate 2021-03-12 15:08:44 -08:00
collin
6962e1c2e1 refactor to use snarkvm int16 int32 int64 int128 gadgets 2021-03-12 15:03:22 -08:00
collin
bec4a15c12 refactor to use snarkvm int8 gadget 2021-03-12 14:23:41 -08:00
Collin Chin
1fbd337fec
Merge pull request #773 from AleoHQ/refactor/gadget-sign-extend
Refactor sign extend gadget
2021-03-12 11:48:02 -08:00
damirka
14d167a725 added tests for constants 2021-03-12 13:56:38 +03:00
damirka
15906bd4d2 updates following @collinc97 review 2021-03-12 12:35:17 +03:00
damirka
8542afe838 added const values processing for tuple and array 2021-03-12 10:21:03 +03:00
damirka
9808b2fa7f Merge branch 'master' into feature/const-inputs 2021-03-12 10:14:29 +03:00
collin
14063f723b refactor to use snarkvm evaluatelt and comparator gadgets 2021-03-11 16:44:46 -08:00
collin
522e3b6ea6 refactor to use snarkvm sub gadget 2021-03-11 16:27:06 -08:00
collin
b5ae6dee64 remove old pow gadget files 2021-03-11 16:19:20 -08:00
collin
faacfbc97e refactor to use snarkvm neg gadget 2021-03-11 16:12:33 -08:00
collin
d4b8bbbe50 refactor to use snarkvm mul gadget 2021-03-11 16:02:28 -08:00
collin
11ddb1f761 refactor to use snarkvm div gadget 2021-03-11 15:54:55 -08:00
Collin Chin
6d378c37e6
Merge pull request #760 from ljedrz/clippy_lints
clippy: 1.50 lints
2021-03-11 15:20:53 -08:00
collin
deb3847b8e remove add trait and uint impls 2021-03-11 14:47:34 -08:00
damirka
344d7886ea change grouping in imports 2021-03-11 23:10:05 +03:00
damirka
47e4d23ab1 staging commit with const input syntax and constants processing 2021-03-11 19:05:08 +03:00
ljedrz
25458835dc clippy: fix 1.50 lints
Signed-off-by: ljedrz <ljedrz@gmail.com>
2021-03-11 14:12:43 +01:00
Protryon
b28f8db4f5 flatten asg-passes 2021-03-10 09:57:27 -08:00
Protryon
0f977707a9 fmt 2021-03-10 09:35:11 -08:00
Protryon
9156068801 constant folding 2021-03-10 09:35:11 -08:00
Collin Chin
ace4147db7
Merge pull request #744 from AleoHQ/dependabot/cargo/indexmap-1.6.2
Bump indexmap from 1.6.1 to 1.6.2
2021-03-08 18:25:51 -08:00
Collin Chin
110fbdd6a6
Merge pull request #692 from AleoHQ/console-assert-error
[CLI] Changes compiler error message for console.assert
2021-03-08 17:50:53 -08:00
dependabot-preview[bot]
c764020b4e
Bump indexmap from 1.6.1 to 1.6.2
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.6.1 to 1.6.2.
- [Release notes](https://github.com/bluss/indexmap/releases)
- [Commits](https://github.com/bluss/indexmap/compare/1.6.1...1.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-09 00:46:13 +00:00
Collin Chin
a18b757ff4
Merge branch 'master' into console-assert-error 2021-03-08 16:20:46 -08:00
dependabot-preview[bot]
ab5da38aa0
Bump num-bigint from 0.3.1 to 0.4.0
Bumps [num-bigint](https://github.com/rust-num/num-bigint) from 0.3.1 to 0.4.0.
- [Release notes](https://github.com/rust-num/num-bigint/releases)
- [Changelog](https://github.com/rust-num/num-bigint/blob/master/RELEASES.md)
- [Commits](https://github.com/rust-num/num-bigint/compare/num-bigint-0.3.1...num-bigint-0.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-08 23:39:44 +00:00
Protryon
a4f2101aaf remove if from ternary expression 2021-03-08 14:45:38 -08:00
Protryon
f5187fc872 fix some failing tests 2021-03-07 06:27:42 -08:00
collin
10ecc6e6e2 merge master and fix build issues 2021-03-04 14:11:17 -08:00
howardwu
2e7b542b8b Format and clean up, enable default on snarkvm_algorithms 2021-03-04 11:09:24 -08:00
howardwu
1735038dee Update algorithms, curves, and gadget traits 2021-03-04 11:02:31 -08:00
howardwu
4650b5cd80 Update gadget traits 2021-03-04 11:01:00 -08:00
howardwu
3bdf598431 Update field and curves traits 2021-03-04 10:59:43 -08:00
howardwu
8690e35e95 Update field structs 2021-03-04 10:58:50 -08:00
howardwu
c03e1045f2 Update gadgets traits 2021-03-04 10:57:20 -08:00
howardwu
dadc57a148 Add r1cs dep 2021-03-04 10:55:22 -08:00
howardwu
e11ef69f74 Add fields dep 2021-03-04 10:54:37 -08:00
howardwu
b029469eca Remove objects dep 2021-03-04 10:54:21 -08:00
howardwu
4692a2b20e Update object errors 2021-03-04 10:53:48 -08:00
howardwu
1b0a6dbd69 Update fields traits 2021-03-04 10:52:54 -08:00
howardwu
7b7c1bbef4 Remove object dept 2021-03-04 10:51:59 -08:00
howardwu
4e9576e58d Fix object errors 2021-03-04 10:49:47 -08:00
howardwu
d8e9edc941 Update fields structs 2021-03-04 10:48:28 -08:00
howardwu
24f5b168aa Updates r1cs traits 2021-03-04 10:45:37 -08:00
howardwu
f3daba63df Update gadgets traits 2021-03-04 10:41:33 -08:00
howardwu
fc4bc537dd Update primefield traits 2021-03-04 10:39:56 -08:00
howardwu
b95495bab3 Update r1cs error 2021-03-04 10:39:22 -08:00
howardwu
3c4b8e9f68 Update gadgets traits 2021-03-04 10:38:28 -08:00
howardwu
400e3dd440 Update r1cs traits 2021-03-04 10:36:54 -08:00
howardwu
bfdf3c4dca Update field trait 2021-03-04 10:36:29 -08:00
howardwu
4f50b44a63 itemize imports 2021-03-04 10:33:51 -08:00
howardwu
c9f70800fd Update .tomls to 0.2.0 2021-03-04 10:33:21 -08:00
Protryon
d400764e00 parser rewrite 2021-03-03 09:59:24 -08:00
howardwu
2bfb64f83e Update synthesizer to support new terminology 2021-02-27 13:21:29 -08:00
howardwu
8a05594b42 Bump snarkvm to v0.0.6 2021-02-27 13:10:39 -08:00
howardwu
77a0af18fe chore(leo): bump version for new release 2021-02-26 19:42:35 -08:00
François Garillot
0d7c6d0b65
Simplifies a number of pattern-matches
Into the direct `Result` / `Option` combinator they correspond to, for concision / clarity.

Reviewed from automated suggestions generated from [comby-rust](https://github.com/huitseeker/comby-rust).
2021-02-26 13:03:04 -08:00
gluax
6e38cc3b31 merge master for uid deprecation 2021-02-25 13:25:38 -05:00
gluax
3e20a9a177
Merge branch 'master' into feature/485-defines 2021-02-25 13:06:40 -05:00
collin
356b7ba062 merge master 2021-02-25 09:51:12 -08:00
damirka
efd193f187 Merge branch 'master' into console-assert-error 2021-02-25 20:24:43 +03:00
howardwu
be398437c6 Updates snarkVM to 0.0.5, updates rand usage 2021-02-25 08:56:20 -08:00
gluax
88bdc45eb1 merge master 2021-02-25 11:56:14 -05:00
gluax
38f5417571 last bit of clean up 2021-02-25 11:48:13 -05:00
Protryon
ed8d2fb11d remove uuid dependency 2021-02-25 07:40:47 -08:00
howardwu
2e00ff451e Rename all instances of 'ctx' to 'context' 2021-02-24 18:13:36 -08:00
gluax
e970194ed3 tuple const fixes, compiler tests 2021-02-24 11:48:00 -05:00
damirka
6448dac047 Fixes #580
- changes error message for console.assert inside main()
- small rewrite of setup command
- adds some autoformatting
2021-02-24 19:17:44 +03:00
dependabot-preview[bot]
f38cce71b3
Bump bincode from 1.3.1 to 1.3.2
Bumps [bincode](https://github.com/servo/bincode) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/servo/bincode/releases)
- [Commits](https://github.com/servo/bincode/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-24 10:47:15 +00:00
gluax
f7314625ff basic use case works, need to clean up, and test more advanced use cases 2021-02-23 14:38:50 -05:00
bors[bot]
211fcb0195
Merge #678
678: Bug 662 Fix r=collinc97 a=gluax

Allows -field values in input values, resolves #662. Also add tests for that and group - input values. Cleans up the re-written code used in a few places by adding a pub crate function. Depends on #626.

Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
Co-authored-by: gluax <16431709+gluax@users.noreply.github.com>
2021-02-19 22:10:36 +00:00
gluax
c5641a5507
Update compiler/src/value/field/input.rs
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-19 13:25:11 -05:00
gluax
ad6f3fcf84 allow -field values in input values, clean up repeated code 2021-02-18 14:36:38 -05:00
bors[bot]
c62af038c5
Merge #672 #673
672: Feature/515 eliminate const vars r=collinc97 a=gluax

Resolves #515. Removes const keyword from statements. Also resolves #514. Still allows const y in function declaration of args.

673: feature/671-primefield-refactor r=collinc97 a=gluax

Resolves #671. Refactor "Field + PrimeField" -> "PrimeField" and all tests still pass.

Co-authored-by: gluaxspeed <jonathan.t.pavlik@gmail.com>
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-18 18:46:46 +00:00
gluax
a7b28fbf0a resolve all the merge conflicts 2021-02-18 11:39:35 -05:00
Collin Chin
9baa9388a0
Merge branch 'master' into feature/515-eliminate-const-vars 2021-02-17 22:06:12 -08:00