Commit Graph

2089 Commits

Author SHA1 Message Date
collin
0c3342f151 Merge branch 'testnet3' of github.com:AleoHQ/leo into feat/ped-commit 2022-08-15 22:11:21 -07:00
collin
fbf0a0aea9 merge testnet3 2022-08-15 21:45:25 -07:00
collin
6b7c38cc4d merge testnet3 2022-08-15 16:10:51 -07:00
Collin Chin
4d18031228
Merge pull request #2014 from AleoHQ/fix/error-on-unrecognized-type
Check for Unrecognized Type
2022-08-15 15:16:23 -07:00
collin
99c4676593 update rev and update tests 2022-08-15 12:05:52 -07:00
collin
a5b6557460 add ped64 ped128 tests 2022-08-15 11:56:17 -07:00
collin
71b7d10efe uncomment ped64 ped128 code 2022-08-15 11:47:23 -07:00
Pranav Gaddamadugu
f6ba7067e1 Fix tyc for member records 2022-08-11 08:55:28 -07:00
Pranav Gaddamadugu
67f9890653 Address feedback 2022-08-11 07:50:10 -07:00
Pranav Gaddamadugu
8caafb78d5 Fmt 2022-08-11 00:55:46 -07:00
Pranav Gaddamadugu
da7ff48b11 Add check for nested records; fix codegen for circuit nested in record 2022-08-11 00:53:01 -07:00
Pranav Gaddamadugu
974e93cadf Tyc checks that types are defined 2022-08-11 00:37:04 -07:00
Pranav Gaddamadugu
dcbdb1bd85 Reintroduce IntegerType 2022-08-09 19:53:17 -07:00
Pranav Gaddamadugu
7ff7170c45 Fix unary negation parser; add test 2022-08-09 19:53:17 -07:00
Pranav Gaddamadugu
7d2f306f15 Simplify type checking logic 2022-08-09 19:53:17 -07:00
Pranav Gaddamadugu
a1d79da501 Parser produces negative integer literals 2022-08-09 19:53:17 -07:00
collin
47d4613627 Update deps 2022-08-09 16:38:12 -07:00
dependabot[bot]
7ec9c92cbd
Bump serde from 1.0.142 to 1.0.143
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.142 to 1.0.143.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.142...v1.0.143)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-09 10:14:03 +00:00
Pranav Gaddamadugu
6897628800 Cleanup 2022-08-06 07:50:18 -07:00
Pranav Gaddamadugu
84369793ac Update passes to account for change in AST 2022-08-06 07:49:36 -07:00
Pranav Gaddamadugu
965102152a Parser produces simplified assignment statements directly 2022-08-06 07:49:36 -07:00
Pranav Gaddamadugu
a531b9642f Remove complex assignments from the AST 2022-08-06 07:49:36 -07:00
Collin Chin
1ea1145295
Naming nit 2022-08-05 18:25:52 -07:00
Pranav Gaddamadugu
a47eb32eaf Cleanup; add test 2022-08-05 14:58:29 -07:00
collin
d397c750d2 merge testnet3 2022-08-05 13:59:08 -07:00
Collin Chin
46f21c68a2
Merge pull request #1994 from AleoHQ/remove-unsafe
Remove all uses of unsafe
2022-08-05 13:50:53 -07:00
d0cd
e4db5511d6
Update compiler/ast/src/expressions/ternary.rs
Co-authored-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
2022-08-05 12:22:23 -07:00
Pranav Gaddamadugu
d56bd3084d Fix order of folded ternary expressions when handling early return statements 2022-08-05 08:30:50 -07:00
Pranav Gaddamadugu
1e4f2b1cca Add compiler test for function calls; fix bugs; regen test expectations 2022-08-04 21:21:56 -07:00
Pranav Gaddamadugu
34be1fc39d Codegen for function call; emits closures before functions 2022-08-04 21:03:42 -07:00
Pranav Gaddamadugu
4e9b382c55 Typecheck helper functions; add codegen support 2022-08-04 19:34:46 -07:00
Pranav Gaddamadugu
fa8d03cbd6 Validate annotations; refactor FunctionInput in passes 2022-08-04 17:59:03 -07:00
Pranav Gaddamadugu
112cc64290 Refactor FunctionInput; removes unecessary code 2022-08-04 17:55:26 -07:00
Pranav Gaddamadugu
ac4cd71800 Reorganize ast/functions folder 2022-08-04 17:55:26 -07:00
Pranav Gaddamadugu
a73ddfb815 Add parser tests for annotations 2022-08-04 17:55:26 -07:00
Pranav Gaddamadugu
2b3bda7da7 Add Annotation to AST; enable parser support 2022-08-04 17:55:26 -07:00
Pranav Gaddamadugu
a269e0f764 Add @ token to the parser 2022-08-04 17:55:26 -07:00
Mazdak Farrokhzad
a77d3b4092 forbid unsafe_code in all crates 2022-08-05 00:36:41 +02:00
Mazdak Farrokhzad
e5819d790b cargo clippy 2022-08-05 00:28:54 +02:00
Mazdak Farrokhzad
6dbc21484f delete all unsafe instead of commenting out 2022-08-05 00:26:35 +02:00
Mazdak Farrokhzad
6cc70015d8 remove all uses of unsafe 2022-08-05 00:21:11 +02:00
Collin Chin
754a3ce685
Merge pull request #1987 from AleoHQ/record-nonce
Record nonce
2022-08-04 09:56:40 -07:00
Collin Chin
81de7d25d8
Update compiler/compiler/src/test.rs 2022-08-04 09:38:14 -07:00
collin
a090d85f10 Update deps 2022-08-04 09:29:04 -07:00
collin
13350da303 merge testnet3 2022-08-03 17:20:40 -07:00
Pranav Gaddamadugu
338515fd66 Regen test expectations 2022-08-03 16:07:18 -07:00
collin
24c152be6e update test infra 2022-08-03 16:06:38 -07:00
collin
0f731a41f0 update deps 2022-08-03 15:34:23 -07:00
collin
8fb2e60cb4 cargo fmt + clippy 2022-08-03 14:52:05 -07:00
collin
7f636ca06d regen tests 2022-08-03 13:47:17 -07:00
collin
e5da76abaf impl nonce 2022-08-03 13:35:58 -07:00
Pranav Gaddamadugu
b97cafbbfc Add support for Rem, RemWrapped, and Mod to passes 2022-08-03 12:55:24 -07:00
Pranav Gaddamadugu
7ff84af785 Add Rem, RemWrapped, and Mod to parser 2022-08-03 12:54:57 -07:00
Pranav Gaddamadugu
b20aed7d34 Add Rem, RemWrapped, and Mod to AST 2022-08-03 12:54:39 -07:00
Collin Chin
d8511d34c1
Merge pull request #1982 from AleoHQ/fix/early-return-with-tuple
[Fix] SSA Reconstruction for Tuple Returns
2022-08-03 09:28:19 -07:00
Pranav Gaddamadugu
c364c581ec Documentation 2022-08-03 00:03:53 -07:00
Pranav Gaddamadugu
5be72596db Implement bug fix 2022-08-02 23:50:08 -07:00
dependabot[bot]
d9c285ebda
Bump serde from 1.0.140 to 1.0.141
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.140 to 1.0.141.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.140...v1.0.141)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 19:59:54 +00:00
Collin Chin
3a9b7c276b
Merge pull request #1968 from AleoHQ/integration-tests
Run snarkVM package build on all Leo tests
2022-08-02 12:58:18 -07:00
collin
5777c76d04 refactor more iteration tests 2022-08-01 17:01:58 -07:00
collin
2cb40cebf0 patch group coordinate codegen 2022-08-01 14:30:05 -07:00
collin
3826293f31 fix op assign bugs 2022-08-01 14:14:39 -07:00
Alessandro Coglio
9d36988946 [span] Add doc comment to explain span addition. 2022-07-30 21:54:29 -07:00
collin
60e4279934 merge testnet3 2022-07-29 14:16:34 -07:00
Pranav Gaddamadugu
bf1421280e Fix bug in SSA; regen test expectations 2022-07-29 12:52:18 -07:00
collin
dd8e1c1a4e impl and, or, bitand, bitor, bitxor, shl, shr assign parsing 2022-07-29 12:47:23 -07:00
collin
c73671bb7b impl sub, mul, div, pow assign parsing 2022-07-29 11:57:34 -07:00
collin
d71788e8a4 impl add assign operator 2022-07-28 18:00:46 -07:00
collin
a2862f8894 stabilize all tests working with snarkVM package build 2022-07-28 17:07:51 -07:00
collin
0a34115ef7 stabilize scalar tests 2022-07-28 16:46:30 -07:00
collin
5a26eed8ca integer min tests fixed 2022-07-28 16:23:16 -07:00
collin
eaa04a5f7e core algorithm tests working 2022-07-28 15:27:43 -07:00
collin
66c5deb7e3 merge testnet3 do not regen tests 2022-07-28 14:23:47 -07:00
collin
8a0e9bc5cc merge testnet3 regen tests 2022-07-28 14:19:57 -07:00
Collin Chin
77b5a55788
Update compiler/ast/src/statements/conditional.rs 2022-07-28 14:01:54 -07:00
collin
fa0fd5b8c0 integer tests passing. strings wip 2022-07-28 13:34:44 -07:00
Pranav Gaddamadugu
3dc234325c Address feedback 2022-07-28 11:51:16 -07:00
Pranav Gaddamadugu
d11ed35c77 Addressing feedback 2022-07-28 09:24:33 -07:00
collin
184af219ee build and check aleo files during cargo test 2022-07-27 15:49:49 -07:00
Mazdak Farrokhzad
37f51014c9 minor cleanup 2022-07-27 21:48:10 +02:00
collin
6724d2abe9 remove unused code 1 2022-07-25 14:17:36 -07:00
Pranav Gaddamadugu
9dd45c3620 Type checking errors on multiple returns 2022-07-24 21:32:36 -07:00
Pranav Gaddamadugu
65e13a77c0 SSA folds all ReturnStatements into a single statement at the end of the block 2022-07-23 10:29:14 -07:00
Pranav Gaddamadugu
ff816c59d3 Cleanup 2022-07-23 10:29:14 -07:00
Pranav Gaddamadugu
e3a36089e0 Fmt 2022-07-23 10:29:14 -07:00
Pranav Gaddamadugu
7059fb5ffa Cleanup 2022-07-23 10:29:14 -07:00
Pranav Gaddamadugu
a4a912f677 Bug fix for SSA pass 2022-07-23 10:29:13 -07:00
Pranav Gaddamadugu
3d63b5c400 Cleanup 2022-07-23 10:29:13 -07:00
Pranav Gaddamadugu
e82c372eac Support code gen for assign statements 2022-07-23 10:29:13 -07:00
Pranav Gaddamadugu
1a62a2ba8c SSA shouldn't reconstruct function ids 2022-07-23 10:29:13 -07:00
Pranav Gaddamadugu
12e356c030 Integrate SSA pass with compiler 2022-07-23 10:29:13 -07:00
Pranav Gaddamadugu
cb32f82352 Pull passes/src/static_single_assignemnt from feat/ssa-and-dce 2022-07-23 10:29:13 -07:00
Collin Chin
77b447bda9
Merge pull request #1956 from AleoHQ/dependabot/cargo/testnet3/serde-1.0.140
Bump serde from 1.0.139 to 1.0.140
2022-07-21 11:17:14 -07:00
dependabot[bot]
e40735675f
Bump serde from 1.0.139 to 1.0.140
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.139 to 1.0.140.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.139...v1.0.140)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 10:14:23 +00:00
dependabot[bot]
108637cd8b
Bump clap from 3.2.12 to 3.2.14
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.12 to 3.2.14.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.12...v3.2.14)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 07:47:38 +00:00
Pranav Gaddamadugu
a6feb314a7 Produce a valid record as input 2022-07-20 15:02:33 -07:00
Pranav Gaddamadugu
3e780dd42b Fix bug in codegen for CircuitExpression 2022-07-20 12:59:23 -07:00
collin
07a199537d clippy 2022-07-18 15:47:30 -07:00
collin
66b0fcc885 merge testnet3 regen tests 2022-07-18 15:33:40 -07:00
collin
4dc0df0084 merge testnet3 2022-07-18 14:13:31 -07:00
Pranav Gaddamadugu
63c910e892 Fix incomplete Display impl for Literal 2022-07-18 12:38:15 -07:00
collin
5316d900f4 merge testnet3, regen tests 2022-07-18 12:32:15 -07:00
Collin Chin
bb861b5bc2
Merge pull request #1941 from AleoHQ/code-gen
Leo run {program_name}
2022-07-18 12:23:12 -07:00
Pranav Gaddamadugu
8199a1e9d3 More feedback/cleanup 2022-07-18 11:54:33 -07:00
Pranav Gaddamadugu
1b872576b2 Merge branch 'testnet3' into feat/loop-unrolling 2022-07-18 07:54:48 -07:00
Alessandro Coglio
f249dee8f7 [span] Update and clarify some comments. 2022-07-17 14:57:47 +02:00
collin
07028a31c8 clippy 2022-07-16 17:39:51 -07:00
collin
6aec344ed3 impl leo run foo to target program names 2022-07-16 17:38:07 -07:00
collin
7f14e02055 import codegen working 2022-07-15 23:36:36 -07:00
collin
0368b8bd51 clippy 2022-07-15 21:00:16 -07:00
collin
914a9c385e code gen for imports 2022-07-15 20:59:47 -07:00
collin
8dde478664 fix leo new 2022-07-15 15:35:19 -07:00
collin
e82631103d clippy 2022-07-15 15:09:01 -07:00
collin
a35606f628 update revs and examples 2022-07-15 15:08:22 -07:00
Pranav Gaddamadugu
604b8cf992 Suppress dead_code warnings; these functions are used in constant folding 2022-07-15 08:55:58 -07:00
Pranav Gaddamadugu
bb0e8b0cf6 Removed unused code 2022-07-15 08:39:16 -07:00
Pranav Gaddamadugu
110c3eb35c Address more feedback 2022-07-15 01:50:14 -07:00
Pranav Gaddamadugu
86b5c9faa1 Fix errors from merge 2022-07-14 17:52:36 -07:00
Pranav Gaddamadugu
b6224d6d89 Merge branch 'testnet3' into feat/loop-unrolling 2022-07-14 17:51:34 -07:00
Pranav Gaddamadugu
43a68fda86 Loop Unrolling skips instead of failing on non-const bounds 2022-07-14 17:07:37 -07:00
Pranav Gaddamadugu
fdc2f65623 More feedback 2022-07-14 17:02:37 -07:00
Pranav Gaddamadugu
923d5924fe Feedback from code review 2022-07-14 14:26:13 -07:00
collin
230491f1b1 clippy 2022-07-13 21:18:09 -07:00
Mazdak Farrokhzad
ce7ac0b443 run cargo clippy 2022-07-14 06:07:07 +02:00
Mazdak Farrokhzad
dab6629ac0 1. move tuple logic to typeck, 2. disallow multi vars in var decls 2022-07-14 06:07:05 +02:00
collin
f4a59c5745 cargo fmt 2022-07-13 21:05:38 -07:00
collin
7d604748bd add token transfer example, fix record cast codegen 2022-07-13 21:02:33 -07:00
collin
13b9261063 bump revs, fix cast instruction 2022-07-13 14:13:30 -07:00
collin
d151401385 indexmap over hashmap 2022-07-12 22:52:56 -07:00
collin
3d9c8dd0e4 add more examples, fix circuits as input 2022-07-12 21:43:19 -07:00
collin
c0e968206b fix examples 2022-07-12 18:30:55 -07:00
collin
266fdd7a5e fix readmes and licenses 2022-07-12 16:46:42 -07:00
collin
0b81f03f3a move /leo/errors -> /errors 2022-07-12 16:41:42 -07:00
collin
6d731891d0 move /leo/span -> /compiler/span 2022-07-12 16:37:10 -07:00
collin
ca0c34ea42 remove unused wasm package 2022-07-12 16:31:19 -07:00
collin
a9992bc6d4 remove unused code 2022-07-12 16:19:58 -07:00
collin
fa28678a26 impl leo run 2022-07-12 14:44:20 -07:00
Pranav Gaddamadugu
f5eea6b307 Regen expectations; cleanup 2022-07-11 23:07:11 -07:00
Pranav Gaddamadugu
bceccea80b Merge branch 'testnet3' into feat/loop-unrolling 2022-07-11 22:55:42 -07:00
Pranav Gaddamadugu
1ce796a586 Regenerate test expectations 2022-07-11 22:45:59 -07:00
Pranav Gaddamadugu
5f8a1df05f Add output/benching for loop unrolling 2022-07-11 22:13:13 -07:00
Pranav Gaddamadugu
9a3fa41f9e Add loop unrolling pass to compiler 2022-07-11 21:57:48 -07:00
Pranav Gaddamadugu
639a719e4d WIP loop unrolling 2022-07-11 21:46:34 -07:00
Pranav Gaddamadugu
1a9941022c Rename type_checker to type_checking 2022-07-11 21:46:15 -07:00
Pranav Gaddamadugu
6a032e7499 WIP value 2022-07-11 21:45:05 -07:00
collin
e013b88811 stabilize leo build 2022-07-11 21:09:27 -07:00
collin
c5849f26af Merge branch 'testnet3' of https://github.com/AleoHQ/leo into code-gen 2022-07-11 15:19:14 -07:00
Collin Chin
bbdf04e999
Merge pull request #1929 from AleoHQ/dependabot/cargo/testnet3/serde_yaml-0.8.25
Bump serde_yaml from 0.8.24 to 0.8.25
2022-07-11 15:17:12 -07:00
Collin Chin
a9fd9a0c2d
Merge pull request #1928 from AleoHQ/dependabot/cargo/testnet3/serde-1.0.139
Bump serde from 1.0.138 to 1.0.139
2022-07-11 15:16:59 -07:00
Pranav Gaddamadugu
7537fb1af2 Pull passes/src/flattening from improved-flattening 2022-07-11 14:53:41 -07:00
Pranav Gaddamadugu
ae13db1d4c Type checking fills in start/stop values for IterationStatement 2022-07-11 14:48:53 -07:00
collin
c719843223 impl program json, aleo build and run working 2022-07-11 14:10:22 -07:00
collin
608d29a81c clippy 2022-07-11 11:58:31 -07:00
collin
426941ac8c fix associated function calls 2022-07-11 11:56:38 -07:00
Pranav Gaddamadugu
3b76574a78 Add start, stop values for IterationStatement 2022-07-11 11:20:54 -07:00
Pranav Gaddamadugu
3d13e8b400 WIP value 2022-07-11 11:18:25 -07:00
collin
1d0dd0781d impl codegen for return tuples 2022-07-11 11:08:01 -07:00
Pranav Gaddamadugu
dbfd9a7451 Better error for address comparison; regen test expectations 2022-07-11 07:49:52 -07:00
Pranav Gaddamadugu
641c98b69e Use refactored types in parsing and tyc 2022-07-11 07:19:00 -07:00
Pranav Gaddamadugu
8bdf199ab1 Remove IntegerTypes and declare them explicitly in Type 2022-07-11 07:17:57 -07:00
dependabot[bot]
8abc3685be
Bump serde_yaml from 0.8.24 to 0.8.25
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.24 to 0.8.25.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.8.24...0.8.25)

---
updated-dependencies:
- dependency-name: serde_yaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-11 10:23:35 +00:00
dependabot[bot]
1d2d345573
Bump serde from 1.0.138 to 1.0.139
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.138 to 1.0.139.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.138...v1.0.139)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-11 10:23:20 +00:00
Pranav Gaddamadugu
15959614d0 Refactor value into its own module 2022-07-10 17:54:12 -07:00
Pranav Gaddamadugu
6fbf96e12d Pull symbol_table/value.rs from improved-flattening 2022-07-10 09:45:53 -07:00
collin
ed79f5c957 merge return-tuple branch 2022-07-09 20:55:30 -07:00
collin
d59cff0844 cargo fmt 2022-07-09 16:58:36 -07:00
collin
a15fce710c merge testnet3 2022-07-09 16:51:20 -07:00
collin
270dffb140 regen tests 2022-07-09 16:23:54 -07:00
collin
1bcb9accec clippy 2022-07-09 15:38:11 -07:00
collin
aff2db67da check that returned tuple types are valid 2022-07-09 15:13:42 -07:00
collin
2a61f26ccc impl tuple tests 2022-07-09 15:02:45 -07:00
collin
642ad32e99 parse tuple access 2022-07-09 14:11:18 -07:00
collin
a7fc19a69f impl tuple ast access 2022-07-09 13:22:10 -07:00
collin
9e422599a0 impl tuple parsing 2022-07-09 12:39:50 -07:00
collin
296c62a280 impl tuple type expression 2022-07-09 10:15:08 -07:00
Pranav Gaddamadugu
8ab98c9434 Refactor emitter to reduce the number of into invocations; more cleanup 2022-07-08 14:10:54 -07:00
Pranav Gaddamadugu
e7f4a41410 Better error for missing member on circuit init 2022-07-08 13:45:00 -07:00
Pranav Gaddamadugu
990b5a75da Rename LiteralExpression to Literal; more cleanup 2022-07-08 13:44:21 -07:00
Pranav Gaddamadugu
cf7bde5fab Clean up error 2022-07-08 13:43:28 -07:00
Pranav Gaddamadugu
0358a5f4da Fmt 2022-07-08 13:43:28 -07:00
collin
a1c42a8d3f impl tuple type 2022-07-08 13:07:20 -07:00
Pranav Gaddamadugu
f31accb04e Cleanup; type checking for Circuit Member Access 2022-07-08 12:56:58 -07:00
collin
43db782ce2 remove Copy trait from Type enum 2022-07-08 12:22:25 -07:00
Pranav Gaddamadugu
00b90c4a33 Merge branch 'testnet3' into feat/redesign-symbol-table 2022-07-08 11:57:40 -07:00
collin
b5a2790375 rename balance -> gates 2022-07-07 16:15:11 -07:00
collin
4d809e82a6 cargo fmt 2022-07-07 15:18:13 -07:00
collin
b461539ae3 use refactored methods in type checking, regen tests 2022-07-07 13:22:59 -07:00
collin
f892fe1a57 refactor type checker for removal of Copy trait 2022-07-07 12:20:34 -07:00
collin
95c2f66c5a clippy 2022-07-06 20:49:05 -07:00
Pranav Gaddamadugu
3136a6ccca Remove TODO 2022-07-06 17:29:57 -07:00
Pranav Gaddamadugu
52671c9328 Documentation for SymbolTable pass 2022-07-06 17:10:18 -07:00
Pranav Gaddamadugu
9b7d9a96b7 Fmt, clippy 2022-07-06 16:16:19 -07:00
Pranav Gaddamadugu
12eafa4174 Regenerate test expectations without symbol_table 2022-07-06 16:10:59 -07:00
Pranav Gaddamadugu
80ff280df7 Remove symbol table from OutputItem; clippy 2022-07-06 16:08:29 -07:00
Pranav Gaddamadugu
027bd24cd5 Integrate passes into compiler 2022-07-06 16:08:29 -07:00
Pranav Gaddamadugu
2a2a65b416 Make type checking pass compatible with current implementation of SymbolTable 2022-07-06 16:08:29 -07:00
Pranav Gaddamadugu
bd1b8251c2 Remove SymbolTable functionality associated with flattening 2022-07-06 16:08:03 -07:00
Pranav Gaddamadugu
24f38721d6 Pull changes to compiler/passes/symbol_table from improved-flattening; remove unused files 2022-07-06 16:08:03 -07:00
collin
dc9063de5a update snarkvm rev 2022-07-06 14:47:52 -07:00
collin
f3b87b5ccb cargo fmt 2022-07-06 14:36:23 -07:00
collin
ade332442a impl codegen for testnet3 2022-07-06 00:48:54 -07:00
Collin Chin
6b5f9a3926
Merge pull request #1913 from AleoHQ/no-cmp-address
Removes <, <=, >, >= for address type
2022-07-05 21:46:31 -07:00
collin
de178522d8 impl Display for BinaryOperation, improve error message 2022-07-05 16:42:36 -07:00
dependabot[bot]
ea7e0248c5
Bump serde from 1.0.137 to 1.0.138
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.137 to 1.0.138.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.137...v1.0.138)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-04 10:21:10 +00:00
collin
dd75133e22 clippy 2022-07-02 18:49:13 -07:00
collin
c16a93ab44 removes <, <=, >, >= for address type 2022-07-02 18:15:18 -07:00
Collin Chin
bf8ca5abc4
Merge pull request #1910 from AleoHQ/fix-doc
[ast] Fix two doc comments.
2022-07-02 17:16:37 -07:00
Alessandro Coglio
7549640764 [ast] Fix two doc comments. 2022-07-02 14:50:19 -07:00
collin
ecc1fff7fd cargo fmt 2022-07-02 14:08:17 -07:00
collin
0a4069fe39 merge testnet3 2022-07-02 14:08:02 -07:00
collin
07288e4662 update licenses 2022-07-02 13:47:53 -07:00
Pranav Gaddamadugu
b08706a2ff Minor documentation 2022-07-01 13:22:01 -07:00
Pranav Gaddamadugu
62d2de8c95 Refactor type checking pass to be compatible with new Visitor pattern 2022-07-01 12:45:40 -07:00
Pranav Gaddamadugu
7b5632be90 Refactor SymbolTable creation pass to be compatible with new Visitor pattern 2022-07-01 12:02:38 -07:00
Pranav Gaddamadugu
a60439eb8a Removed old Visitor and Reducer files 2022-07-01 11:54:44 -07:00
Pranav Gaddamadugu
e6794a0dec Pull changes to compiler/ast/src/passes/reconstructor.rs from improved-flattening 2022-07-01 11:51:33 -07:00
Pranav Gaddamadugu
f1cd080d91 Pull changes to compiler/ast/src/passes/visitor.rs from improved-flattening 2022-07-01 11:50:59 -07:00
Mazdak Farrokhzad
91fd8ff1b2
fix typo 2022-07-01 00:03:26 +02:00
Mazdak Farrokhzad
952d7f4e36 records: base them atop circuits instead 2022-06-30 15:37:18 +02:00
collin
a58edee122 cargo clippy 2022-06-27 12:50:23 -10:00
collin
6933d5d9da cargo clippy 2022-06-27 09:44:49 -10:00
collin
df8ee1a1f9 fix type checking bugs 2022-06-26 15:13:58 -10:00
collin
21c6a2167a type check record init expressions 2022-06-26 10:46:32 -10:00
collin
18a74cfb85 type check record type declaration 2022-06-24 11:47:01 -10:00
collin
d45ab61e40 parse record type declaration 2022-06-23 22:34:18 -10:00
collin
9d0fd00072 add record type 2022-06-23 21:44:06 -10:00
collin
5ee2858b0a add tests and remove dead code 2022-06-22 22:38:33 -10:00
collin
7417496eee merge testnet3 2022-06-22 21:42:00 -10:00
collin
4a80445bd8 test hashing u128 with ped64 fails 2022-06-22 21:29:04 -10:00
collin
4400545543 add all core circuit tests 2022-06-22 21:19:26 -10:00
collin
0c89c1b5fb add circuit variable access and type check 2022-06-22 15:14:00 -10:00
collin
a79196c945 fix circuit type checking, addresses review comments 2/2 2022-06-21 19:37:23 -07:00
collin
d6e32788b4 rename static -> associated, addresses review comments 1/2 2022-06-21 18:30:10 -07:00
Mazdak Farrokhzad
b4e8a773df simplify bidi override logic 2022-06-21 17:12:36 +02:00
Mazdak Farrokhzad
1d92e07fdf simplify tokenize_iter 2022-06-21 17:12:36 +02:00
Mazdak Farrokhzad
2c194b8e57 reduce work for string literals bidi check 2022-06-21 17:12:36 +02:00
Mazdak Farrokhzad
8b3e87889f cargo clippy 2022-06-21 17:12:36 +02:00
Mazdak Farrokhzad
7226659bf6 Value -> Literal 2022-06-21 17:12:34 +02:00
Mazdak Farrokhzad
ddbf2ae849 1. Speed up string literal lexing.
2. Move address check to parser.
3. Move assignment place WF check to type checker.
2022-06-21 17:07:44 +02:00
collin
6366f44762 AVM evaluate wip 2022-06-20 16:41:21 -07:00
collin
88aa7c478e enable codegen 2022-06-20 14:31:00 -07:00
collin
bb7c41ffad merge prototype/code-gen 2022-06-20 14:21:28 -07:00
collin
f7a55de9a6 lt, gt, lte, gte for address 2022-06-20 13:25:40 -07:00
collin
99605f46a5 le, ge -> lte, gte 2022-06-20 13:24:20 -07:00
collin
23ba8bc40c check field type for square_root 2022-06-20 13:18:11 -07:00
collin
d4171de577 check signed ints for abs and abs.w 2022-06-20 13:15:13 -07:00
collin
811eaadc98 remove poseidon prfs 2022-06-20 13:06:47 -07:00
collin
bfd3a37a42 merge testnet3 2022-06-20 12:34:33 -07:00
collin
52395bba45 fix circuit type checking 2022-06-17 18:32:49 -07:00
collin
5a0186b93d cargo fmt 2022-06-17 15:42:09 -07:00
collin
26810a15ae impl bhp, pedersen, poseidon instructions 2022-06-17 15:37:48 -07:00
collin
d527a88a3a impl core circuit instructions 2022-06-17 11:17:46 -07:00
gluax
c9ab4bd3d7 add bitwise op parsing, fix tests 2022-06-16 15:40:48 -07:00
gluax
b656fd5347 fix type checking on certain bitwise operations 2022-06-16 12:49:41 -07:00
gluax
2181672b60 had to fix function calls after previous changes 2022-06-16 12:03:24 -07:00
gluax
a40d025d18 clean up of parsing method call fixs 2022-06-16 11:36:50 -07:00
gluax
33fe8ebbc2 fixes bug #1877 to make debugging easier, fixes parsing of method calls 2022-06-16 11:33:16 -07:00
collin
b9f8bafc91 pull latest testnet3 2022-06-15 16:52:49 -07:00
collin
26f04e2eaf core circuit wip 2022-06-15 16:50:21 -07:00
collin
993b86e8c7 add circuit type parsing up to type checking 2022-06-15 16:08:05 -07:00
collin
3882ec2425 add circuit type to ast 2022-06-15 11:32:19 -07:00
collin
b2890f393a merge testnet3 2022-06-15 10:23:01 -07:00
Mazdak Farrokhzad
eee838abba fixes in special methods parsing 2022-06-15 14:51:44 +02:00
collin
0e59e9bcf9 fix cmp type checking 2022-06-14 10:55:59 -07:00
collin
6c759b7174 impl unary 2022-06-13 18:35:18 -07:00
collin
831e011f42 use more clear type checking methods 2022-06-13 14:53:01 -07:00
gluax
2c9a91552c Merge branch 'testnet3' of github.com:AleoHQ/leo into feature/compiler-benchmarking 2022-06-12 09:26:30 -07:00
gluax
3a056220ff doing some recommended changes 2022-06-12 09:26:14 -07:00
collin
02e3313d59 add docs for type checking and fix bugs 2022-06-10 17:21:33 -07:00
collin
32f0c96b6f impl shl shr tokens and type checking 2022-06-10 16:33:30 -07:00
collin
4e3ed8d4dc regen tests 2022-06-10 13:02:16 -07:00
collin
f248827b37 impl binary operators WIP no tests 2022-06-09 16:47:31 -07:00
collin
0e0ec362f1 cargo fmt 2022-06-09 13:24:01 -07:00
collin
1b4e37e66e fix symbol index bug 2022-06-09 13:16:54 -07:00
collin
9797175f16 remove method call expr and type checking 2022-06-09 13:07:30 -07:00
collin
a32418133c parse method calls directly 2022-06-09 13:01:59 -07:00
gluax
36440719fb resolve merge conflicts 2022-06-09 12:46:59 -07:00
gluax
540fdccffe Update abnf, and give docs over parser keywords 2022-06-09 12:45:52 -07:00
gluax
ba7aef7f1e merge conflicts fix 2022-06-09 12:35:26 -07:00
gluax
4607f2955a add some more checks and namespaces for benchmarks, docs 2022-06-09 12:23:57 -07:00
collin
df08cd1e26 order dependencies 2022-06-08 14:47:34 -07:00
collin
5dba9cf07f impl method call type checking 2022-06-08 14:44:08 -07:00
gluax
5ce5102a37 the rest of the test-framework rework and clean up start 2022-06-08 14:06:25 -07:00
gluax
3c7de6e389 some compiler lib cleanup 2022-06-08 10:53:41 -07:00
gluax
f6990e75fc fixed some bugs 2022-06-08 06:46:54 -07:00
0rphon
d43fd813f7 fixed compiler benchmarks 2022-06-08 00:20:09 -07:00
d0cd
86d7cb99dd Prettier bytecode printing 2022-06-07 11:13:11 -07:00
d0cd
472ff794a6 Integrate prototype into compiler passes 2022-06-07 10:01:13 -07:00
gluax
9aae2faff6 remove input file 2022-06-07 09:22:16 -07:00
d0cd
f2e0ba7dcd Initial prototype for code gen 2022-06-07 09:13:57 -07:00
gluax
384a7b24b8 add back compiler options for asts, set up compiler benchmarking 2022-06-06 11:45:33 -07:00
0rphon
0af9622cd9 replaced structopt with clap 2022-06-06 11:00:08 -07:00
collin
f0a1573058 impl method call expression parsing 2022-06-03 13:27:23 -04:00
Collin Chin
18b71d225b
Merge pull request #1857 from AleoHQ/more-tyc-bug-fixes
[Fix] Type Checking Bugs
2022-06-03 12:09:12 -04:00
gluax
8ad69944c0 bug fixes 2022-06-02 09:39:49 -07:00
collin
d419e3b7d8 merge testnet3 2022-06-02 11:51:46 -04:00
collin
27c858a0fc merge testnet3 2022-06-02 11:33:11 -04:00
collin
85eb1adcce rename corelib -> core, update readme 2022-06-02 11:22:08 -04:00
Collin Chin
59ffe66363
Merge branch 'testnet3' into issue-1841 2022-06-01 22:51:44 -04:00
gluax
9638a695aa fix more bugs, add type checking 2022-06-01 11:16:00 -07:00
collin
3b62e3cc97 fix bugs 2022-06-01 13:49:55 -04:00
gluax
ace7005ea7 fmt 2022-06-01 09:26:18 -07:00
gluax
220cb3e730 rename stdlib -> corelib 2022-06-01 09:09:38 -07:00
Alessandro Coglio
ad43c50902 Remove remnant mentions on tendril.
Rename a function.

Rename two variables.

Update some comments.

Remove a README entry that is no longer there.
2022-05-31 22:24:17 -07:00
gluax
0ce4639a1b merge upstream, test builtin ident types 2022-05-31 10:34:57 -07:00
Mazdak Farrokhzad
6399f873f5 improve error for '&' not followed by '&' 2022-05-31 16:28:01 +02:00
Mazdak Farrokhzad
c623165742 simplify Token::eat 2022-05-31 16:16:15 +02:00
gluax
1da03e728b add checks for ident types being allowed built in types 2022-05-30 11:29:00 -07:00
gluax
2db204b81e further changes to the visitor pattern to clean up code 2022-05-30 10:53:06 -07:00
collin
a230bd1477 remove char 2022-05-26 16:53:57 -04:00
collin
3de06095ed cargo fmt 2022-05-26 16:48:34 -04:00
collin
2327bca617 implement static string type 2022-05-26 16:43:18 -04:00
gluax
044b2a10a4 refa:ctored visitor pattern to better on an the AST 2022-05-26 13:29:51 -07:00
collin
4d7540501f add string type to tokenizer + lexer 2022-05-26 16:13:03 -04:00
collin
84c0a82008 add string type to tokenizer + lexer 2022-05-26 15:55:37 -04:00
gluax
94d96f156f fix span for group scalar errors, use suggested doc comment 2022-05-26 10:09:34 -07:00
gluax
97ef64aa66 trying to modify visitor pattern to better fit type checking 2022-05-26 10:05:04 -07:00
gluax
bc174419f7 start adding the new core types 2022-05-25 16:19:56 -07:00
gluax
4f30e6e896 add ident type back in 2022-05-25 15:56:44 -07:00
gluax
2117ee3ae8 resolve readme conflict 2022-05-25 11:55:23 -07:00
collin
e34c35f1b0 merge testnet3 2022-05-25 14:28:03 -04:00
collin
65408acbb5 fix lexer test 2022-05-25 14:10:15 -04:00
collin
8d79193474 merge testnet3 2022-05-25 14:02:10 -04:00
gluax
936360793c slight clean up & handle grammar readme 2022-05-25 10:45:25 -07:00
gluax
8cb4b19e66 merge upstream changes 2022-05-25 09:21:47 -07:00
collin
4bc2fb10f4 cargo fmt 2022-05-24 13:39:08 -04:00
Collin Chin
c10e305366
Update type_.rs 2022-05-24 13:24:36 -04:00
collin
38d701851d clean up match 2022-05-24 12:49:38 -04:00
collin
c62f876765 type checker clean up and add docs 2022-05-24 12:11:55 -04:00
Collin Chin
944c5dcdd8
Update value.rs 2022-05-24 11:27:28 -04:00
Mazdak Farrokhzad
620b3525d4 misc parser tweaks 2022-05-24 16:48:58 +02:00
gluax
ca3fb11bc3 fmt fix 2022-05-23 19:01:07 -07:00
gluax
1cd7aad6ad fix #1819 2022-05-23 18:55:42 -07:00
gluax
65d237e25f fix last error double printing for error collection 2022-05-23 18:14:36 -07:00
gluax
ba4f1666d1 fix #1821 2022-05-23 18:00:33 -07:00
gluax
eee58883a6 clean up and fix type set checking 2022-05-23 11:07:43 -07:00
collin
d0273719ab push broken type checker 2022-05-23 11:40:14 -04:00
collin
b8780e888d merge testnet3 2022-05-20 10:39:21 -04:00
collin
119c191836 merge testnet3 2022-05-18 14:29:54 -04:00
Collin Chin
4ce11080b5
Merge pull request #1825 from AleoHQ/fix-loop-end-inclusive
[parser] Fix to disallow inclusive loop ending bound.
2022-05-18 14:17:32 -04:00
Mazdak Farrokhzad
4237a52696 simplify eat_identifier 2022-05-18 14:46:45 +02:00
Mazdak Farrokhzad
882f2e5454 remove char type + literals 2022-05-18 14:33:04 +02:00
Mazdak Farrokhzad
7f435eba48 remove expression statements 2022-05-17 14:41:30 +02:00
Alessandro Coglio
b1baf90719 [parser] Adhere to style. 2022-05-16 21:27:29 -07:00
Alessandro Coglio
1761b80578 [parser] Fix to disallow including loop ending bound.
This is not part of the current version of Leo (cf. ABNF grammar and Leo
Reference).

Adapt tests.
2022-05-16 21:24:42 -07:00
Alessandro Coglio
4989c50409 [parser] Attempt to fix style check. 2022-05-14 00:03:55 -07:00
Alessandro Coglio
21616fe167 [parser] Remove the input keyword.
This is also not in the current grammar, and it does not look like it is going
to be re-added.
2022-05-13 23:50:33 -07:00
Alessandro Coglio
2fbaf759db [parser] Remove mut and type keywords.
As discussed, these are no longer in the grammar. If and when we need them, we
will re-add them.

This also removes some extra code that gives a specific error when mut is
used. However, that is in fact another bug, because `mut` is a valid identifier
in the current grammar, and thus this extra code unjustly rejects code that uses
`mut` as an identifier.

Adjust some tests and expectations.
2022-05-13 23:36:08 -07:00
collin
f6aa7a578a merge testnet3 2022-05-13 12:33:35 -07:00
collin
bacc0d7510 merge testnet3 2022-05-12 13:18:43 -07:00