Conversation
rkarabut
approved these changes
Jun 19, 2025
github-merge-queue bot
pushed a commit
to AztecProtocol/aztec-packages
that referenced
this pull request
Jun 23, 2025
Automated pull of nightly from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE fix: increment reference counts when deduplicating calls which return arrays (noir-lang/noir#8757) fix: Add a aliased check for last stores (noir-lang/noir#8955) fix(LICM): Consider negative loop bounds before hoisting `div <const> <induction-var>` (noir-lang/noir#8986) fix: check "negate with overflow" in comptime code + allow u1 to be used in comptime code (noir-lang/noir#8969) fix: better package name validation and error messages for nargo new/init (noir-lang/noir#8978) feat(fuzz): Add comptime_vs_brillig_direct target (noir-lang/noir#8924) fix(expand): show references to ModuleDefId recursing on parents (noir-lang/noir#8977) feat(ssa_fuzzer): loops + signed (noir-lang/noir#8881) fix(fuzz): Do not take a mutable reference over immutable vars which contain a mutable ref (noir-lang/noir#8971) fix(fuzz): Avoid negating `i8::MIN` into `i8::MAX+1` which won't compile (noir-lang/noir#8972) END_COMMIT_OVERRIDE --------- Co-authored-by: AztecBot <tech@aztecprotocol.com> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
github-merge-queue bot
pushed a commit
to AztecProtocol/aztec-packages
that referenced
this pull request
Jun 23, 2025
Automated pull of nightly from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE fix: increment reference counts when deduplicating calls which return arrays (noir-lang/noir#8757) fix: Add a aliased check for last stores (noir-lang/noir#8955) fix(LICM): Consider negative loop bounds before hoisting `div <const> <induction-var>` (noir-lang/noir#8986) fix: check "negate with overflow" in comptime code + allow u1 to be used in comptime code (noir-lang/noir#8969) fix: better package name validation and error messages for nargo new/init (noir-lang/noir#8978) feat(fuzz): Add comptime_vs_brillig_direct target (noir-lang/noir#8924) fix(expand): show references to ModuleDefId recursing on parents (noir-lang/noir#8977) feat(ssa_fuzzer): loops + signed (noir-lang/noir#8881) fix(fuzz): Do not take a mutable reference over immutable vars which contain a mutable ref (noir-lang/noir#8971) fix(fuzz): Avoid negating `i8::MIN` into `i8::MAX+1` which won't compile (noir-lang/noir#8972) END_COMMIT_OVERRIDE --------- Co-authored-by: AztecBot <tech@aztecprotocol.com> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
github-merge-queue bot
pushed a commit
to AztecProtocol/aztec-packages
that referenced
this pull request
Jun 23, 2025
Automated pull of nightly from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE fix: increment reference counts when deduplicating calls which return arrays (noir-lang/noir#8757) fix: Add a aliased check for last stores (noir-lang/noir#8955) fix(LICM): Consider negative loop bounds before hoisting `div <const> <induction-var>` (noir-lang/noir#8986) fix: check "negate with overflow" in comptime code + allow u1 to be used in comptime code (noir-lang/noir#8969) fix: better package name validation and error messages for nargo new/init (noir-lang/noir#8978) feat(fuzz): Add comptime_vs_brillig_direct target (noir-lang/noir#8924) fix(expand): show references to ModuleDefId recursing on parents (noir-lang/noir#8977) feat(ssa_fuzzer): loops + signed (noir-lang/noir#8881) fix(fuzz): Do not take a mutable reference over immutable vars which contain a mutable ref (noir-lang/noir#8971) fix(fuzz): Avoid negating `i8::MIN` into `i8::MAX+1` which won't compile (noir-lang/noir#8972) END_COMMIT_OVERRIDE --------- Co-authored-by: AztecBot <tech@aztecprotocol.com> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
github-merge-queue bot
pushed a commit
to AztecProtocol/aztec-packages
that referenced
this pull request
Jun 23, 2025
Automated pull of nightly from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE fix: increment reference counts when deduplicating calls which return arrays (noir-lang/noir#8757) fix: Add a aliased check for last stores (noir-lang/noir#8955) fix(LICM): Consider negative loop bounds before hoisting `div <const> <induction-var>` (noir-lang/noir#8986) fix: check "negate with overflow" in comptime code + allow u1 to be used in comptime code (noir-lang/noir#8969) fix: better package name validation and error messages for nargo new/init (noir-lang/noir#8978) feat(fuzz): Add comptime_vs_brillig_direct target (noir-lang/noir#8924) fix(expand): show references to ModuleDefId recursing on parents (noir-lang/noir#8977) feat(ssa_fuzzer): loops + signed (noir-lang/noir#8881) fix(fuzz): Do not take a mutable reference over immutable vars which contain a mutable ref (noir-lang/noir#8971) fix(fuzz): Avoid negating `i8::MIN` into `i8::MAX+1` which won't compile (noir-lang/noir#8972) END_COMMIT_OVERRIDE --------- Co-authored-by: AztecBot <tech@aztecprotocol.com> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
danielntmd
pushed a commit
to danielntmd/aztec-packages
that referenced
this pull request
Jul 16, 2025
Automated pull of nightly from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE fix: increment reference counts when deduplicating calls which return arrays (noir-lang/noir#8757) fix: Add a aliased check for last stores (noir-lang/noir#8955) fix(LICM): Consider negative loop bounds before hoisting `div <const> <induction-var>` (noir-lang/noir#8986) fix: check "negate with overflow" in comptime code + allow u1 to be used in comptime code (noir-lang/noir#8969) fix: better package name validation and error messages for nargo new/init (noir-lang/noir#8978) feat(fuzz): Add comptime_vs_brillig_direct target (noir-lang/noir#8924) fix(expand): show references to ModuleDefId recursing on parents (noir-lang/noir#8977) feat(ssa_fuzzer): loops + signed (noir-lang/noir#8881) fix(fuzz): Do not take a mutable reference over immutable vars which contain a mutable ref (noir-lang/noir#8971) fix(fuzz): Avoid negating `i8::MIN` into `i8::MAX+1` which won't compile (noir-lang/noir#8972) END_COMMIT_OVERRIDE --------- Co-authored-by: AztecBot <tech@aztecprotocol.com> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
AztecBot
added a commit
to AztecProtocol/barretenberg
that referenced
this pull request
Dec 3, 2025
Automated pull of nightly from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE fix: increment reference counts when deduplicating calls which return arrays (noir-lang/noir#8757) fix: Add a aliased check for last stores (noir-lang/noir#8955) fix(LICM): Consider negative loop bounds before hoisting `div <const> <induction-var>` (noir-lang/noir#8986) fix: check "negate with overflow" in comptime code + allow u1 to be used in comptime code (noir-lang/noir#8969) fix: better package name validation and error messages for nargo new/init (noir-lang/noir#8978) feat(fuzz): Add comptime_vs_brillig_direct target (noir-lang/noir#8924) fix(expand): show references to ModuleDefId recursing on parents (noir-lang/noir#8977) feat(ssa_fuzzer): loops + signed (noir-lang/noir#8881) fix(fuzz): Do not take a mutable reference over immutable vars which contain a mutable ref (noir-lang/noir#8971) fix(fuzz): Avoid negating `i8::MIN` into `i8::MAX+1` which won't compile (noir-lang/noir#8972) END_COMMIT_OVERRIDE --------- Co-authored-by: AztecBot <tech@aztecprotocol.com> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
This file contains hidden or 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
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 one of the errors in https://github.com/noir-lang/noir/actions/runs/15748645365/job/44389551968
Summary*
Fixes the AST generator to consider the mutability of the variable when it generates a target type from a source expression, and avoid taking a mutable reference over the non-mutable parts of an immutable variable, that might also contain a mutable ref.
Additional Context
To reproduce the error:
NOIR_AST_FUZZER_SEED=0x89a06e3200100000 cargo test -p noir_ast_fuzzer_fuzz comptime_vs_brilligWhat happened was that we had a type like this:
let d = (false, &mut false);and we were looking to produce an&mut bool; we knowdcan produce it asd.1, so we chosedas the producer. However, the generator that considered how to produce&mut boolfrom(bool, &mut bool)thought that it can do&mut <src>.0, not knowing that the source in this case was not mutable.Documentation*
Check one:
PR Checklist*
cargo fmton default settings.