Skip to content

Update toolchain to nightly-2026-03-08#94

Draft
coord-e wants to merge 3 commits into
mainfrom
claude/update-nightly-incremental-9hwgj
Draft

Update toolchain to nightly-2026-03-08#94
coord-e wants to merge 3 commits into
mainfrom
claude/update-nightly-incremental-9hwgj

Conversation

@coord-e
Copy link
Copy Markdown
Owner

@coord-e coord-e commented May 24, 2026

Adapts thrust to breaking MIR and API changes introduced between
nightly-2025-09-08 and nightly-2026-03-08:

  • rust-toolchain.toml: bump channel to nightly-2026-03-08

  • src/main.rs: update for new rustc query/provider API shape
    (mir_borrowck, StripTokens, AllowConstBlockItems, ExitCode return)

  • src/analyze.rs: fix mir_borrowck_skip_formula_fn signature for new
    ErrorGuaranteed / FxIndexMap types

  • src/analyze/basic_block.rs: handle ReifyFnPointer(_) wildcard and
    new Operand::RuntimeChecks variant

  • src/analyze/local_def.rs: handle two new MIR elaboration patterns
    that replace CopyForDeref in 2026-03-08:

    1. Two-stage box deref: _nonnull = copy box.Field(Unique).Field(NonNull)
      followed by _ptr = Transmute(_nonnull) — fixes list_length_const etc.
    2. Closure &mut T capture: _alias = copy (*closure).field with &mut T
      type — fixes closure_mut / closure_mut_0 false negatives
  • src/refine/env.rs: fix large_enum_variant (box PlaceType), path_type
    deref, and locate_place loop style for new clippy lints

  • tests/ui/fail/{just_rec,split,fn_poly_param_order,adt_discr,
    extern_spec_take,annot_formula_fn,annot_preds_trait,
    annot_preds_trait_multi,iterators/range}.rs: add //@no-rustfix to
    suppress ui_test rustfix checks that now correctly detect Unsat

https://claude.ai/code/session_01URrtbSTUKNrVKLK2MNLBFc

claude added 3 commits May 21, 2026 05:10
Adapts thrust to breaking MIR and API changes introduced between
nightly-2025-09-08 and nightly-2026-03-08:

- rust-toolchain.toml: bump channel to nightly-2026-03-08

- src/main.rs: update for new rustc query/provider API shape
  (mir_borrowck, StripTokens, AllowConstBlockItems, ExitCode return)

- src/analyze.rs: fix mir_borrowck_skip_formula_fn signature for new
  ErrorGuaranteed / FxIndexMap types

- src/analyze/basic_block.rs: handle ReifyFnPointer(_) wildcard and
  new Operand::RuntimeChecks variant

- src/analyze/local_def.rs: handle two new MIR elaboration patterns
  that replace CopyForDeref in 2026-03-08:
    1. Two-stage box deref: `_nonnull = copy box.Field(Unique).Field(NonNull)`
       followed by `_ptr = Transmute(_nonnull)` — fixes list_length_const etc.
    2. Closure &mut T capture: `_alias = copy (*closure).field` with &mut T
       type — fixes closure_mut / closure_mut_0 false negatives

- src/refine/env.rs: fix large_enum_variant (box PlaceType), path_type
  deref, and locate_place loop style for new clippy lints

- tests/ui/fail/{just_rec,split,fn_poly_param_order,adt_discr,
  extern_spec_take,annot_formula_fn,annot_preds_trait,
  annot_preds_trait_multi,iterators/range}.rs: add //@no-rustfix to
  suppress ui_test rustfix checks that now correctly detect Unsat

https://claude.ai/code/session_01URrtbSTUKNrVKLK2MNLBFc
Covers loose MIR dump files and compiled debug binaries produced during
nightly toolchain debugging sessions.

https://claude.ai/code/session_01URrtbSTUKNrVKLK2MNLBFc
nightly-2026-03-08 generates more complex CHC constraints for the
nested iterator pattern (FixedFilter wrapping Range), causing Z3's
SPACER algorithm to time out. Disable SPACER by clearing solver args
(like range.rs already does) so Z3 uses its default FP strategy.

https://claude.ai/code/session_01URrtbSTUKNrVKLK2MNLBFc
@coord-e coord-e marked this pull request as draft May 24, 2026 14:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants