I just updated from the July 8th to the July 9th nightly - and after updating, roc-start no longer compiles, where it did prior to updating.
Here is the error message I get:
thread 'main' panicked at crates/compiler/mono/src/borrow.rs:396:33:
internal error: entered unreachable code: no borrow signature for LambdaName { name: `74.IdentId(44)`, niche: Niche(Captures([InLayout(105), InLayout(242)])) } layout
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Looks like my issue may be the same as this
Could it be from this PR? https://github.com/roc-lang/roc/pull/6849
Maybe we need to update the roc_std library in basic-cli? I don't think so
Hmm.. could be.. I was on yesterdays nightly without issue, and that PR is from 2 days ago, but I see that PR does introduce changes in borrow.rs
, so seems like could be related...
Hah! nevermind... I did make a code change before the update - replace all
resulted in function which had the same name as the value its return was assigned to.
PEBCAK! :sweat_smile:
Ian McLerran has marked this topic as resolved.
We have been seeing no borrow signature for LambdaName
pop up a lot, we should investigate this, I suspect we may have gotten better error messages in the past given the same Roc code.
This is almost certainly from folkerts PR. That said, I think most of the time I have hit it, the code was actually broken anyway (even if I go back before folkerts PR). Generally happens when we have l lambdaset issues. I think they are just caught in a different place now.
I don't get better errors instead of the no borrow signature error
. Just get lambdaset crashes that are opaque/non-actionable.
Note: small sample size. Might be some cases where that borrow inference blocks useful errors. I just haven't run into it.
Last updated: Jul 06 2025 at 12:14 UTC