Skip to content

New error on nightly 'overflow evaluating the requirement' #123622

@weiznich

Description

@weiznich

Code

I tried this code: diesel-rs/diesel@9fe91c3

git clone https://github.com/diesel-rs/diesel/
cd diesel
git checkout 9fe91c3ce6124ef86f714a3928e0db3db803c64e
cargo check --all-targets -p diesel_tests --features "sqlite"

I expected to see this happen: Compilation succeeds as on stable/beta/older nightlies.

Instead, this happened: New "overflow evalualing the requirement" errors are emitted:

error[E0275]: overflow evaluating the requirement `(&_, &_, &_, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...): diesel::Insertable<...>`
  |
  = help: consider increasing the recursion limit by adding a `#![recursion_limit = "2048"]` attribute to your crate (`integration_tests`)
  = note: required for `&(_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _)` to implement `diesel::Insertable<schema::trees::table>`
  = note: 1023 redundant requirements hidden
  = note: required for `(&..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` to implement `diesel::Insertable<schema::trees::table>`
  = note: the full name for the type has been written to '/tmp/diesel/target/debug/deps/integration_tests-f4624868b3b3c56d.long-type-14619293875363383290.txt'
  = note: consider using `--verbose` to print the full type name to the console

error[E0275]: overflow evaluating the requirement `(&_, &_, &_, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...): diesel::Insertable<...>`
  |
  = help: consider increasing the recursion limit by adding a `#![recursion_limit = "2048"]` attribute to your crate (`integration_tests`)
  = note: required for `&(_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _)` to implement `diesel::Insertable<schema::users::table>`
  = note: 1023 redundant requirements hidden
  = note: required for `(&..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` to implement `diesel::Insertable<schema::users::table>`
  = note: the full name for the type has been written to '/tmp/diesel/target/debug/deps/integration_tests-f4624868b3b3c56d.long-type-14619293875363383290.txt'
  = note: consider using `--verbose` to print the full type name to the console

error[E0275]: overflow evaluating the requirement `(&_, &_, &_, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...): diesel::Insertable<...>`
  |
  = help: consider increasing the recursion limit by adding a `#![recursion_limit = "2048"]` attribute to your crate (`integration_tests`)
  = note: required for `&(_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _)` to implement `diesel::Insertable<schema::with_keywords::table>`
  = note: 1023 redundant requirements hidden
  = note: required for `(&..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` to implement `diesel::Insertable<schema::with_keywords::table>`
  = note: the full name for the type has been written to '/tmp/diesel/target/debug/deps/integration_tests-f4624868b3b3c56d.long-type-14619293875363383290.txt'
  = note: consider using `--verbose` to print the full type name to the console

error[E0275]: overflow evaluating the requirement `(&_, &_, &_, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...): diesel::Insertable<...>`
  |
  = help: consider increasing the recursion limit by adding a `#![recursion_limit = "2048"]` attribute to your crate (`integration_tests`)
  = note: required for `&(_, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _)` to implement `diesel::Insertable<has_time_types::table>`
  = note: 1023 redundant requirements hidden
  = note: required for `(&..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` to implement `diesel::Insertable<has_time_types::table>`
  = note: the full name for the type has been written to '/tmp/diesel/target/debug/deps/integration_tests-f4624868b3b3c56d.long-type-14619293875363383290.txt'
  = note: consider using `--verbose` to print the full type name to the console

Version it worked on

It most recently worked on: nightly-2024-04-05

Version with regression

rustc --version --verbose:

rustc 1.79.0-nightly (9d5cdf75a 2024-04-07)
binary: rustc
commit-hash: 9d5cdf75aa42faaf0b58ba21a510117e8d0051a3
commit-date: 2024-04-07
host: x86_64-unknown-linux-gnu
release: 1.79.0-nightly
LLVM version: 18.1.3

I've run cargo bisect-rustc and got back the following report:


Regression in 9d79cd5


Attempting to search unrolled perf builds
ERROR: couldn't find perf build comment

searched nightlies: from nightly-2024-04-05 to nightly-2024-04-08
regressed nightly: nightly-2024-04-06
searched commit range: 385fa9d...9d79cd5
regressed commit: 9d79cd5

bisected with cargo-bisect-rustc v0.6.8

Host triple: x86_64-unknown-linux-gnu
Reproduce with:

cargo bisect-rustc --start 2024-04-05 --script script.sh --regress error 

cc @Urgau as author of the relevant PR.

@rustbot modify labels: +regression-from-nightly-to-nightly -regression-untriaged

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions