-
Notifications
You must be signed in to change notification settings - Fork 204
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(experimental elaborator): Avoid calling add_generics
twice on trait methods
#5108
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Didn't realize the diff got messed up in git, I'll merge master again |
Diff should be fixed |
michaeljklein
approved these changes
May 28, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
# Description ## Problem\* Resolves a panic in the elaborator during monomorphization related to parameters being resolved twice and having a different DefinitionId the second time. ## Summary\* I've stored the original ids from the first resolution and switched to using only those. ## Additional Context ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
vezenovm
approved these changes
May 28, 2024
TomAFrench
added a commit
that referenced
this pull request
May 28, 2024
* master: fix(experimental elaborator): Avoid calling `add_generics` twice on trait methods (#5108) fix(experimental elaborator): Fix duplicate `resolve_type` on self type and don't leak a trait impl's generics (#5102) feat: replace stdlib poseidon implementation with optimized version (#5122) fix(experimental elaborator): Only call `add_generics` once (#5091) fix(experimental elaborator): Fix panic in the elaborator (#5082) chore: move `is_native_field` up into `noirc_frontend` (#5119)
AztecBot
added a commit
to AztecProtocol/aztec-packages
that referenced
this pull request
May 29, 2024
fix(experimental elaborator): Avoid calling `add_generics` twice on trait methods (noir-lang/noir#5108) fix(experimental elaborator): Fix duplicate `resolve_type` on self type and don't leak a trait impl's generics (noir-lang/noir#5102) feat: replace stdlib poseidon implementation with optimized version (noir-lang/noir#5122) fix(experimental elaborator): Only call `add_generics` once (noir-lang/noir#5091) fix(experimental elaborator): Fix panic in the elaborator (noir-lang/noir#5082) chore: move `is_native_field` up into `noirc_frontend` (noir-lang/noir#5119)
TomAFrench
added a commit
to AztecProtocol/aztec-packages
that referenced
this pull request
May 29, 2024
Automated pull of development from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE chore: remove duplicated code from LSP (noir-lang/noir#5116) fix(experimental elaborator): Avoid calling `add_generics` twice on trait methods (noir-lang/noir#5108) fix(experimental elaborator): Fix duplicate `resolve_type` on self type and don't leak a trait impl's generics (noir-lang/noir#5102) feat: replace stdlib poseidon implementation with optimized version (noir-lang/noir#5122) fix(experimental elaborator): Only call `add_generics` once (noir-lang/noir#5091) fix(experimental elaborator): Fix panic in the elaborator (noir-lang/noir#5082) chore: move `is_native_field` up into `noirc_frontend` (noir-lang/noir#5119) END_COMMIT_OVERRIDE Co-authored-by: Tom French <[email protected]>
github-merge-queue bot
pushed a commit
that referenced
this pull request
Jun 17, 2024
🤖 I have created a release *beep* *boop* --- <details><summary>0.31.0</summary> ## [0.31.0](v0.30.0...v0.31.0) (2024-06-17) ### ⚠ BREAKING CHANGES * remove `dep::` prefix ([#4946](#4946)) * remove `distinct` keyword ([#5219](#5219)) * remove `param_witnesses` and `return_witnesses` from ABI ([#5154](#5154)) * add session id to foreign call RPC requests ([#5205](#5205)) * restrict noir word size to u32 ([#5180](#5180)) * separate proving from `noir_js` ([#5072](#5072)) * switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) * specify databus arrays for BB (AztecProtocol/aztec-packages#6239) * **stdlib:** eddsa function using turbofish ([#5050](#5050)) ### Features * `pxe.addNullifiedNote(...)` (AztecProtocol/aztec-packages#6948) ([7de19f5](7de19f5)) * Activate return_data in ACIR opcodes ([#5080](#5080)) ([c9fda3c](c9fda3c)) * Add `as_witness` builtin function in order to constrain a witness to be equal to a variable ([#4641](#4641)) ([faf5bd8](faf5bd8)) * Add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` ([#5241](#5241)) ([1849389](1849389)) * Add BoundedVec::map ([#5250](#5250)) ([da1549c](da1549c)) * Add intrinsic to get if running inside an unconstrained context ([#5098](#5098)) ([281ebf2](281ebf2)) * Add native rust implementation of schnorr signature verification ([#5053](#5053)) ([fab1c35](fab1c35)) * Add session id to foreign call RPC requests ([#5205](#5205)) ([14adafc](14adafc)) * Consider block parameters in variable liveness ([#5097](#5097)) ([e4eb5f5](e4eb5f5)) * **experimental:** Implement macro calls & splicing into `Expr` values ([#5203](#5203)) ([d9b4712](d9b4712)) * Implement println in the comptime interpreter ([#5197](#5197)) ([7f08343](7f08343)) * Implement turbofish operator ([#3542](#3542)) ([226724e](226724e)) * Make ACVM generic across fields ([#5114](#5114)) ([70f374c](70f374c)) * Move abi demonomorphizer to noir_codegen and use noir_codegen in protocol types (AztecProtocol/aztec-packages#6302) ([436bbda](436bbda)) * Move to_radix to a blackbox (AztecProtocol/aztec-packages#6294) ([436bbda](436bbda)) * **nargo:** Hidden option to show contract artifact paths written by `nargo compile` (AztecProtocol/aztec-packages#6131) ([ff67e14](ff67e14)) * Place return value witnesses directly after function arguments ([#5142](#5142)) ([1252b5f](1252b5f)) * Private Kernel Recursion (AztecProtocol/aztec-packages#6278) ([436bbda](436bbda)) * Proper padding in ts AES and constrained AES in body and header computations (AztecProtocol/aztec-packages#6269) ([436bbda](436bbda)) * Remove `dep::` prefix ([#4946](#4946)) ([d6d0ae2](d6d0ae2)) * Remove conditional compilation of `bn254_blackbox_solver` ([#5058](#5058)) ([9420d7c](9420d7c)) * Remove external blackbox solver from acir simulator (AztecProtocol/aztec-packages#6586) ([a40a9a5](a40a9a5)) * Replace stdlib poseidon implementation with optimized version ([#5122](#5122)) ([11e98f3](11e98f3)) * Restrict noir word size to u32 ([#5180](#5180)) ([bdb2bc6](bdb2bc6)) * Separate proving from `noir_js` ([#5072](#5072)) ([c93c738](c93c738)) * Separate runtimes of SSA functions before inlining ([#5121](#5121)) ([69eca9b](69eca9b)) * Specify databus arrays for BB (AztecProtocol/aztec-packages#6239) ([436bbda](436bbda)) * Standardize pedersen functions to return `EmbeddedCurvePoint` ([#5190](#5190)) ([3b85b36](3b85b36)) * **stdlib:** Eddsa function using turbofish ([#5050](#5050)) ([7936262](7936262)) * Support casting in globals ([#5164](#5164)) ([6d3e732](6d3e732)) * Switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6280) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6332) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6573) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6986) ([7de19f5](7de19f5)) * ToRadix BB + avm transpiler support (AztecProtocol/aztec-packages#6330) ([436bbda](436bbda)) ### Bug Fixes * Add support for nested arrays returned by oracles ([#5132](#5132)) ([f846879](f846879)) * Apply self type from generic trait constraint before instantiating identifiers ([#5087](#5087)) ([2b4755c](2b4755c)) * Auto dereference trait methods in the elaborator ([#5124](#5124)) ([56c1a85](56c1a85)) * Check for public args in aztec functions (AztecProtocol/aztec-packages#6355) ([436bbda](436bbda)) * Disable `if` optimization ([#5240](#5240)) ([a2816db](a2816db)) * **elaborator:** Fix duplicate methods error ([#5225](#5225)) ([87a1d8e](87a1d8e)) * **elaborator:** Fix regression introduced by lazy-global changes ([#5223](#5223)) ([fde432a](fde432a)) * **elaborator:** Invert unconstrained check ([#5176](#5176)) ([967c0fa](967c0fa)) * **elaborator:** Lazily elaborate globals ([#5191](#5191)) ([9c99a97](9c99a97)) * Error for allocate instructions in acir-gen ([#5200](#5200)) ([58c7532](58c7532)) * **experimental elaborator:** Avoid calling `add_generics` twice on trait methods ([#5108](#5108)) ([7d8c0a3](7d8c0a3)) * **experimental elaborator:** Clear generics after elaborating type aliases ([#5136](#5136)) ([b0a7d0b](b0a7d0b)) * **experimental elaborator:** Fix `impl Trait` when `--use-elaborator` is selected ([#5138](#5138)) ([7ea5962](7ea5962)) * **experimental elaborator:** Fix definition kind of globals and tuple patterns with `--use-elaborator` flag ([#5139](#5139)) ([a140dec](a140dec)) * **experimental elaborator:** Fix duplicate `resolve_type` on self type and don't leak a trait impl's generics ([#5102](#5102)) ([db561e2](db561e2)) * **experimental elaborator:** Fix frontend tests when `--use-elaborator` flag is specified ([#5145](#5145)) ([d6122eb](d6122eb)) * **experimental elaborator:** Fix global values used in the elaborator ([#5135](#5135)) ([e73cdbb](e73cdbb)) * **experimental elaborator:** Fix globals which use function calls ([#5172](#5172)) ([ab0b1a8](ab0b1a8)) * **experimental elaborator:** Fix panic in the elaborator ([#5082](#5082)) ([ffcb410](ffcb410)) * **experimental elaborator:** Only call `add_generics` once ([#5091](#5091)) ([f5d2946](f5d2946)) * Fix panic in `get_global_let_statement` ([#5177](#5177)) ([b769b01](b769b01)) * **frontend:** Call trait method with mut self from generic definition ([#5041](#5041)) ([89846cf](89846cf)) * **frontend:** Correctly monomorphize turbofish functions ([#5049](#5049)) ([fd772e7](fd772e7)) * **frontend:** Resolve object types from method calls a single time ([#5131](#5131)) ([3afe023](3afe023)) * Temporarily revert to_radix blackbox (AztecProtocol/aztec-packages#6304) ([436bbda](436bbda)) * Use plain integer addresses for opcodes in DAP disassembly view ([#4941](#4941)) ([d43ba1b](d43ba1b)) * Use predicate for curve operations ([#5076](#5076)) ([145b909](145b909)) * Wrapping in signed division ([#5134](#5134)) ([29baeb4](29baeb4)) ### Miscellaneous Chores * Remove `distinct` keyword ([#5219](#5219)) ([1d62c59](1d62c59)) * Remove `param_witnesses` and `return_witnesses` from ABI ([#5154](#5154)) ([21562ae](21562ae)) </details> <details><summary>0.47.0</summary> ## [0.47.0](v0.46.0...v0.47.0) (2024-06-17) ### ⚠ BREAKING CHANGES * add session id to foreign call RPC requests ([#5205](#5205)) * restrict noir word size to u32 ([#5180](#5180)) * switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) * specify databus arrays for BB (AztecProtocol/aztec-packages#6239) * remove `Opcode::Brillig` from ACIR (AztecProtocol/aztec-packages#5995) * AES blackbox (AztecProtocol/aztec-packages#6016) * Bit shift is restricted to u8 right operand ([#4907](#4907)) * contract interfaces and better function calls (AztecProtocol/aztec-packages#5687) * change backend width to 4 (AztecProtocol/aztec-packages#5374) * Use fixed size arrays in black box functions where sizes are known (AztecProtocol/aztec-packages#5620) * trap with revert data (AztecProtocol/aztec-packages#5732) * **acir:** BrilligCall opcode (AztecProtocol/aztec-packages#5709) * remove fixed-length keccak256 (AztecProtocol/aztec-packages#5617) * storage_layout and `#[aztec(storage)]` (AztecProtocol/aztec-packages#5387) * **acir:** Add predicate to call opcode (AztecProtocol/aztec-packages#5616) * contract_abi-exports (AztecProtocol/aztec-packages#5386) * Brillig typed memory (AztecProtocol/aztec-packages#5395) * **acir:** Program and witness stack structure (AztecProtocol/aztec-packages#5149) * automatic NoteInterface and NoteGetterOptions auto select (AztecProtocol/aztec-packages#4508) * Acir call opcode (AztecProtocol/aztec-packages#4773) * Support contracts with no constructor (AztecProtocol/aztec-packages#5175) * Internal as a macro (AztecProtocol/aztec-packages#4898) * move noir out of yarn-project (AztecProtocol/aztec-packages#4479) * note type ids (AztecProtocol/aztec-packages#4500) * rename bigint_neg into bigint_sub (AztecProtocol/aztec-packages#4420) * Add expression width into acir (AztecProtocol/aztec-packages#4014) * init storage macro (AztecProtocol/aztec-packages#4200) * **acir:** Move `is_recursive` flag to be part of the circuit definition (AztecProtocol/aztec-packages#4221) ### Features * `multi_scalar_mul` blackbox func (AztecProtocol/aztec-packages#6097) ([73a635e](73a635e)) * `variable_base_scalar_mul` blackbox func (AztecProtocol/aztec-packages#6039) ([73a635e](73a635e)) * Acir call opcode (AztecProtocol/aztec-packages#4773) ([c3c9e19](c3c9e19)) * **acir_gen:** Brillig stdlib ([#4848](#4848)) ([0c8175c](0c8175c)) * **acir_gen:** Fold attribute at compile-time and initial non inlined ACIR (AztecProtocol/aztec-packages#5341) ([a0f7474](a0f7474)) * **acir:** Add predicate to call opcode (AztecProtocol/aztec-packages#5616) ([2bd006a](2bd006a)) * **acir:** BrilligCall opcode (AztecProtocol/aztec-packages#5709) ([0f9ae0a](0f9ae0a)) * **acir:** Program and witness stack structure (AztecProtocol/aztec-packages#5149) ([13eb71b](13eb71b)) * Activate return_data in ACIR opcodes ([#5080](#5080)) ([c9fda3c](c9fda3c)) * **acvm_js:** Execute program ([#4694](#4694)) ([386f6d0](386f6d0)) * **acvm:** Execute multiple circuits (AztecProtocol/aztec-packages#5380) ([a0f7474](a0f7474)) * Add bit size to const opcode (AztecProtocol/aztec-packages#4385) ([158c8ce](158c8ce)) * Add CMOV instruction to brillig and brillig gen (AztecProtocol/aztec-packages#5308) ([13eb71b](13eb71b)) * Add expression width into acir (AztecProtocol/aztec-packages#4014) ([158c8ce](158c8ce)) * Add instrumentation for tracking variables in debugging ([#4122](#4122)) ([c58d691](c58d691)) * Add native rust implementation of schnorr signature verification ([#5053](#5053)) ([fab1c35](fab1c35)) * Add native rust implementations of pedersen functions ([#4871](#4871)) ([fb039f7](fb039f7)) * Add poseidon2 opcode implementation for acvm/brillig, and Noir ([#4398](#4398)) ([10e8292](10e8292)) * Add return values to aztec fns (AztecProtocol/aztec-packages#5389) ([2bd006a](2bd006a)) * Add session id to foreign call RPC requests ([#5205](#5205)) ([14adafc](14adafc)) * Added cast opcode and cast calldata (AztecProtocol/aztec-packages#4423) ([78ef013](78ef013)) * AES blackbox (AztecProtocol/aztec-packages#6016) ([73a635e](73a635e)) * Allow brillig to read arrays directly from memory (AztecProtocol/aztec-packages#4460) ([158c8ce](158c8ce)) * Allow nested arrays and vectors in Brillig foreign calls (AztecProtocol/aztec-packages#4478) ([158c8ce](158c8ce)) * Allow variables and stack trace inspection in the debugger ([#4184](#4184)) ([bf263fc](bf263fc)) * Automatic NoteInterface and NoteGetterOptions auto select (AztecProtocol/aztec-packages#4508) ([13eb71b](13eb71b)) * **avm:** Back in avm context with macro - refactor context (AztecProtocol/aztec-packages#4438) ([158c8ce](158c8ce)) * **avm:** Brillig CONST of size > u128 (AztecProtocol/aztec-packages#5217) ([c3c9e19](c3c9e19)) * **avm:** Integrate AVM with initializers (AztecProtocol/aztec-packages#5469) ([2bd006a](2bd006a)) * **aztec-nr:** Initial work for aztec public vm macro (AztecProtocol/aztec-packages#4400) ([158c8ce](158c8ce)) * Backpropagate constants in ACIR during optimization ([#3926](#3926)) ([aad0da0](aad0da0)) * Bit shift is restricted to u8 right operand ([#4907](#4907)) ([c4b0369](c4b0369)) * Brillig heterogeneous memory cells (AztecProtocol/aztec-packages#5608) ([305bcdc](305bcdc)) * Brillig IR refactor (AztecProtocol/aztec-packages#5233) ([c3c9e19](c3c9e19)) * Brillig pointer codegen and execution (AztecProtocol/aztec-packages#5737) ([0f9ae0a](0f9ae0a)) * Brillig typed memory (AztecProtocol/aztec-packages#5395) ([0bc18c4](0bc18c4)) * Change backend width to 4 (AztecProtocol/aztec-packages#5374) ([0f9ae0a](0f9ae0a)) * Check initializer msg.sender matches deployer from address preimage (AztecProtocol/aztec-packages#5222) ([c3c9e19](c3c9e19)) * Contract interfaces and better function calls (AztecProtocol/aztec-packages#5687) ([0f9ae0a](0f9ae0a)) * Contract_abi-exports (AztecProtocol/aztec-packages#5386) ([2bd006a](2bd006a)) * Dynamic assertion payloads v2 (AztecProtocol/aztec-packages#5949) ([73a635e](73a635e)) * Evaluation of dynamic assert messages ([#4101](#4101)) ([c284e01](c284e01)) * Handle `BrilligCall` opcodes in the debugger ([#4897](#4897)) ([b380dc4](b380dc4)) * Impl of missing functionality in new key store (AztecProtocol/aztec-packages#5750) ([0f9ae0a](0f9ae0a)) * Increase default expression width to 4 ([#4995](#4995)) ([f01d309](f01d309)) * Init storage macro (AztecProtocol/aztec-packages#4200) ([158c8ce](158c8ce)) * Initial Earthly CI (AztecProtocol/aztec-packages#5069) ([c3c9e19](c3c9e19)) * Internal as a macro (AztecProtocol/aztec-packages#4898) ([5f57ebb](5f57ebb)) * Make ACVM generic across fields ([#5114](#5114)) ([70f374c](70f374c)) * Move abi demonomorphizer to noir_codegen and use noir_codegen in protocol types (AztecProtocol/aztec-packages#6302) ([436bbda](436bbda)) * Move to_radix to a blackbox (AztecProtocol/aztec-packages#6294) ([436bbda](436bbda)) * **nargo:** Handle call stacks for multiple Acir calls ([#4711](#4711)) ([5b23171](5b23171)) * **nargo:** Hidden option to show contract artifact paths written by `nargo compile` (AztecProtocol/aztec-packages#6131) ([ff67e14](ff67e14)) * New brillig field operations and refactor of binary operations (AztecProtocol/aztec-packages#5208) ([c3c9e19](c3c9e19)) * Note type ids (AztecProtocol/aztec-packages#4500) ([78ef013](78ef013)) * Parsing non-string assertion payloads in noir js (AztecProtocol/aztec-packages#6079) ([73a635e](73a635e)) * Private Kernel Recursion (AztecProtocol/aztec-packages#6278) ([436bbda](436bbda)) * Proper padding in ts AES and constrained AES in body and header computations (AztecProtocol/aztec-packages#6269) ([436bbda](436bbda)) * Remove conditional compilation of `bn254_blackbox_solver` ([#5058](#5058)) ([9420d7c](9420d7c)) * Remove external blackbox solver from acir simulator (AztecProtocol/aztec-packages#6586) ([a40a9a5](a40a9a5)) * Restore hashing args via slice for performance (AztecProtocol/aztec-packages#5539) ([2bd006a](2bd006a)) * Restrict noir word size to u32 ([#5180](#5180)) ([bdb2bc6](bdb2bc6)) * Separate runtimes of SSA functions before inlining ([#5121](#5121)) ([69eca9b](69eca9b)) * Set aztec private functions to be recursive (AztecProtocol/aztec-packages#6192) ([73a635e](73a635e)) * Signed integer division and modulus in brillig gen (AztecProtocol/aztec-packages#5279) ([c3c9e19](c3c9e19)) * **simulator:** Fetch return values at circuit execution (AztecProtocol/aztec-packages#5642) ([305bcdc](305bcdc)) * Specify databus arrays for BB (AztecProtocol/aztec-packages#6239) ([436bbda](436bbda)) * Storage_layout and `#[aztec(storage)]` (AztecProtocol/aztec-packages#5387) ([2bd006a](2bd006a)) * Support contracts with no constructor (AztecProtocol/aztec-packages#5175) ([c3c9e19](c3c9e19)) * Switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) ([436bbda](436bbda)) * Sync from aztec-packages ([#4483](#4483)) ([fe8f277](fe8f277)) * Sync from noir (AztecProtocol/aztec-packages#5234) ([c3c9e19](c3c9e19)) * Sync from noir (AztecProtocol/aztec-packages#5286) ([c3c9e19](c3c9e19)) * Sync from noir (AztecProtocol/aztec-packages#5572) ([2bd006a](2bd006a)) * Sync from noir (AztecProtocol/aztec-packages#5619) ([2bd006a](2bd006a)) * Sync from noir (AztecProtocol/aztec-packages#5697) ([305bcdc](305bcdc)) * Sync from noir (AztecProtocol/aztec-packages#5794) ([0f9ae0a](0f9ae0a)) * Sync from noir (AztecProtocol/aztec-packages#5814) ([0f9ae0a](0f9ae0a)) * Sync from noir (AztecProtocol/aztec-packages#5935) ([1b867b1](1b867b1)) * Sync from noir (AztecProtocol/aztec-packages#5955) ([1b867b1](1b867b1)) * Sync from noir (AztecProtocol/aztec-packages#5999) ([1b867b1](1b867b1)) * Sync from noir (AztecProtocol/aztec-packages#6280) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6332) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6573) ([436bbda](436bbda)) * ToRadix BB + avm transpiler support (AztecProtocol/aztec-packages#6330) ([436bbda](436bbda)) * Trap with revert data (AztecProtocol/aztec-packages#5732) ([0f9ae0a](0f9ae0a)) * Use fixed size arrays in black box functions where sizes are known (AztecProtocol/aztec-packages#5620) ([0f9ae0a](0f9ae0a)) * Variable length returns (AztecProtocol/aztec-packages#5633) ([305bcdc](305bcdc)) ### Bug Fixes * **acvm:** Mark outputs of Opcode::Call solvable ([#4708](#4708)) ([8fea405](8fea405)) * Add support for nested arrays returned by oracles ([#5132](#5132)) ([f846879](f846879)) * Avoid huge unrolling in hash_args (AztecProtocol/aztec-packages#5703) ([305bcdc](305bcdc)) * Catch panics from EC point creation (e.g. the point is at infinity) ([#4790](#4790)) ([645dba1](645dba1)) * Check for public args in aztec functions (AztecProtocol/aztec-packages#6355) ([436bbda](436bbda)) * Don't reuse brillig with slice arguments (AztecProtocol/aztec-packages#5800) ([0f9ae0a](0f9ae0a)) * Issue 4682 and add solver for unconstrained bigintegers ([#4729](#4729)) ([e4d33c1](e4d33c1)) * Noir test incorrect reporting (AztecProtocol/aztec-packages#4925) ([5f57ebb](5f57ebb)) * Proper field inversion for bigints ([#4802](#4802)) ([b46d0e3](b46d0e3)) * Temporarily revert to_radix blackbox (AztecProtocol/aztec-packages#6304) ([436bbda](436bbda)) ### Miscellaneous Chores * **acir:** Move `is_recursive` flag to be part of the circuit definition (AztecProtocol/aztec-packages#4221) ([158c8ce](158c8ce)) * Move noir out of yarn-project (AztecProtocol/aztec-packages#4479) ([78ef013](78ef013)) * Remove `Opcode::Brillig` from ACIR (AztecProtocol/aztec-packages#5995) ([73a635e](73a635e)) * Remove fixed-length keccak256 (AztecProtocol/aztec-packages#5617) ([305bcdc](305bcdc)) * Rename bigint_neg into bigint_sub (AztecProtocol/aztec-packages#4420) ([158c8ce](158c8ce)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: kevaundray <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Problem*
Resolves the single "Duplicate definitions of found" error.
Summary*
Since
resolve_trait_function
already callsadd_generics
indirectly viadefine_function_meta
, we were adding generics on trait methods twice before. I've removed the first of the two to fix this.Additional Context
After this the only errors that remain are the 5 on these lines of the stdlib: https://github.com/noir-lang/noir/blob/master/noir_stdlib/src/eddsa.nr#L49-L53. I believe these are the result of something from the turbofish changes being missed (likely #5041) since they were recently modified from #5050.
Documentation*
Check one:
PR Checklist*
cargo fmt
on default settings.