Skip to content

thirtyfour non-Send witness regression #245

@lcnr

Description

@lcnr
cargo download thirtyfour@0.33.0-alpha.2
cd thirtyfour-0.33.0-alpha.2
RUSTFLAGS=-Znext-solver cargo +nightly b

results in 16 similar errors

error[E0277]: `{coroutine witness@src/extensions/query/element_query.rs:460:43: 505:6}` cannot be sent between threads safely
   --> src/components/wrapper/resolver.rs:366:9
    |
361 |             async move {
    |             ---------- within this `{async block@src/components/wrapper/resolver.rs:361:13: 361:23}`
...
366 |         Self::new_custom(base_element, resolver)
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `{coroutine witness@src/extensions/query/element_query.rs:460:43: 505:6}` cannot be sent between threads safely
    |
...

this error is surprising. By testing with cargo rustc -- -Ztreat-err-as-bug the ICE does happen in query check_coroutine_obligations as it should. We apparently actually do a witness which previously implemented Send but no longer does so.

Would be good to minimize this issue to figure out what exactly is going wrong.

Metadata

Metadata

Assignees

No one assigned

    Labels

    from-craterA regression found via a crater run, not part of our test suite

    Type

    No type

    Projects

    Status

    todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions