Commit Graph

759 Commits

Author SHA1 Message Date
d0cd
1e31a9045a
Merge pull request #28433 from ProvableHQ/shadowing
Disallow local variables from shadowing functions, structs, mappings,…
2024-11-06 18:54:50 -08:00
Michael Benfield
003383762d Disallow local variables from shadowing functions, structs, mappings, etc. 2024-11-05 12:17:55 -08:00
Michael Benfield
4afc757216 Update MSRV in all the other crates to match. 2024-11-04 13:24:00 -08:00
Pranav Gaddamadugu
819fa2f6d9 Merge branch 'mainnet' into ci/integration-tests-to-circle-ci 2024-11-01 09:35:37 -07:00
Pranav Gaddamadugu
94dab70da8 Update deps 2024-10-23 13:30:50 -07:00
Michael Benfield
0a5a6985f1 Handle closures that are invalid for Aleo.
In particular,

1. Insert a dummy instruction for empty closures
and finalizers. SnarkVM won't parse these with no instructions.

2. Give an error for Leo functions with
no parameters (rather than just generating
an invalid Aleo closure).

Fixes #28401
2024-10-23 12:03:12 -07:00
Pranav Gaddamadugu
fa0b3ffff7 Clean up docs workflow 2024-10-22 18:12:22 -07:00
Michael Benfield
da8ef9b779 Consistently make 1 empty line between output items in codegen. 2024-10-21 17:00:21 -07:00
Michael Benfield
5e7591fec9 Improve handling of guards while flattening.
Specifically three changes are made:

1. Cache Anded together chains of conditionals for early returns.
This prevents quadratic code being generated in the face of a chain
of ifs like

```
if a { return 0u32; } else if b { return 1u32 } else if ...
```

2. Take into account early returns for asserts, and cache the
when reconstructing the assert, as with caching them for early returns.

Fixes #28386, #28387
2024-10-17 10:03:08 -07:00
Michael Benfield
a55dfe29e8 Clean up dependencies.
Remove unused deps. Use workspace deps where appropriate.
2024-10-10 12:56:17 -07:00
Michael Benfield
5a0f39cd9f hex, octal, and binary literals for integers.
Note that they can't be used on the command line since SnarkVM
does the parsing there.
2024-10-10 08:26:58 -07:00
Michael Benfield
2bbff6d0a8 Display Type::Boolean as bool, not boolean.
Leo calls this `bool`, so it's potentially confusing when error
messages say `boolean`.
2024-10-04 15:43:52 -07:00
d0cd
94579410c4
Merge pull request #28373 from ProvableHQ/issue-28370-resolve
Add function inputs to the type table.
2024-10-04 07:50:38 +08:00
Michael Benfield
f283ff2671 Address clippy lints. 2024-10-03 13:18:19 -07:00
Michael Benfield
2919f0bfd0 Add function inputs to the type table.
Fixes #28370
2024-10-03 11:45:49 -07:00
Pranav Gaddamadugu
174dae47db Update rustfmt.toml to latest nightly and apply changes 2024-10-01 18:19:39 -07:00
Pranav Gaddamadugu
d746c427cc chore(leo): bump version for new release 2024-09-19 08:00:35 +08:00
Pranav Gaddamadugu
82eba55f8d chore(leo): bump version for new release 2024-09-04 15:18:01 -07:00
Pranav Gaddamadugu
7dfecd41b1 Update LicenseHeader and Cargo metadata 2024-09-04 11:48:02 -07:00
evan-schott
a356ff8a34 Fix 2024-08-09 19:33:17 -07:00
Pranav Gaddamadugu
acb7b61feb chore(leo): bump version for new release 2024-08-07 01:10:09 -04:00
Pranav Gaddamadugu
140a04072d chore(leo): bump version for new release 2024-07-08 13:53:16 -07:00
Pranav Gaddamadugu
72d09ff27d Clippy 2024-07-02 18:37:23 -07:00
Pranav Gaddamadugu
6404d22b09 Fix 2024-07-02 18:10:54 -07:00
evan-schott
af45146282 fix 2024-06-12 10:58:24 -07:00
Pranav Gaddamadugu
1d1d01aeee Implement fix 2024-06-08 17:41:06 -07:00
dependabot[bot]
96dd83b586
Bump itertools from 0.12.1 to 0.13.0
Bumps [itertools](https://github.com/rust-itertools/itertools) from 0.12.1 to 0.13.0.
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.12.1...v0.13.0)

---
updated-dependencies:
- dependency-name: itertools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-17 10:21:43 +00:00
Pranav Gaddamadugu
6f48a4a01c Fix flattening 2024-05-14 17:28:53 -07:00
Pranav Gaddamadugu
962526dab5 Fix flattening 2024-05-14 15:20:28 -07:00
Pranav Gaddamadugu
e4e228c419 Merge branch 'mainnet' into update/from-testnet3 2024-05-14 14:47:33 -07:00
Pranav Gaddamadugu
11b5502eac Merge branch 'testnet3' into update/from-testnet3 2024-05-14 13:39:40 -07:00
Pranav Gaddamadugu
b0ef7a8f46 Update testnet3 to mainnet 2024-05-14 13:31:33 -07:00
Pranav Gaddamadugu
f29bd71185 Make compiler generic over Network 2024-05-14 09:49:03 -07:00
Pranav Gaddamadugu
65afb54a5b chore(leo): bump version for new release 2024-05-13 13:36:45 -07:00
Pranav Gaddamadugu
d2b1d055ce Update tests and fix 2024-05-13 11:09:15 -07:00
Pranav Gaddamadugu
c378e090d7 Merge branch 'mainnet' into update/from-testnet3 2024-05-13 10:10:31 -07:00
dependabot[bot]
9e830a41bf
Bump num-traits from 0.2.18 to 0.2.19
Bumps [num-traits](https://github.com/rust-num/num-traits) from 0.2.18 to 0.2.19.
- [Changelog](https://github.com/rust-num/num-traits/blob/master/RELEASES.md)
- [Commits](https://github.com/rust-num/num-traits/compare/num-traits-0.2.18...num-traits-0.2.19)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-06 10:30:34 +00:00
Pranav Gaddamadugu
3b3a3bff02 Compatibility fixes 2024-04-30 13:51:09 -04:00
Pranav Gaddamadugu
d27ba5fa31 Merge branch 'testnet3' into update/from-testnet3 2024-04-30 13:50:06 -04:00
evan-schott
07a6c84100 fixes 2024-04-29 14:11:42 -07:00
evan-schott
1e0afc20c1 Passing network.id test 2024-04-23 14:19:09 -07:00
evan-schott
5a060a4254 support for network.id 2024-04-22 18:34:31 -07:00
evan-schott
dda608f484 Add support for program address literals (ex: hello.aleo) & self.address 2024-04-22 18:18:48 -07:00
evan-schott
f93d77b9de Fix bug where return self.caller caused panic 2024-04-22 13:23:55 -07:00
Pranav Gaddamadugu
efd12d5b09 Update codegen to include depth on positions 2024-04-18 20:36:38 -07:00
Pranav Gaddamadugu
0eae4f07a1 Update tests; regen expectations 2024-04-18 20:31:00 -07:00
Pranav Gaddamadugu
eb18118b3f Update codegen, fix compiler 2024-04-18 18:21:33 -07:00
Pranav Gaddamadugu
0b07ea6a35 Allow ConditionalStatements in finalize in Destructuring and Flattening 2024-04-18 18:21:02 -07:00
Pranav Gaddamadugu
b419dfdce4 Clippy 2024-04-18 18:20:14 -07:00
Pranav Gaddamadugu
781d7a816a Fix and add test 2024-04-18 18:20:14 -07:00