Error map

E0521: borrowed data escapes outside of function Rust: error[E0521]: borrowed data escapes outside of function — `data` escapes the function body here (tokio::spawn requires 'static)

Rust · layer 4, Application & API

Open the full error page →

Centre: this error. First ring: errors it is linked with (9). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.

E0521: borrowed data escapes outside of function — Rust: error[E0521]: borrowed data escapes outside of function — `data` escapes the function body here (tokio::spawn requires 'static) (Rust)E0521: borr…E0502 — Rust: error[E0502]: cannot borrow `x` as mutable because it is also borrowed as immutable (Rust)E0502E0373: closure may outlive the current function — Rust: error[E0373]: closure may outlive the current function, but it borrows `v`, which is owned by the current function (Rust)E0373: closure may …there is no reactor running, must be called from the context of a Tokio 1.x runtime — Rust: thread 'main' panicked: there is no reactor running, must be called from the context of a Tokio 1.x runtime (Rust)there is no reactor…E0728: await is only allowed inside async functions and blocks — Rust: error[E0728]: `await` is only allowed inside `async` functions and blocks (Rust)E0728: await is onl…Cannot start a runtime from within a runtime (Tokio) — Rust: thread 'main' panicked: Cannot start a runtime from within a runtime — a function like `block_on` tried to block a thread that drives async tasks (Rust)Cannot start a runt…E0106: missing lifetime specifier — Rust: error[E0106]: missing lifetime specifier — this function's return type contains a borrowed value, but the signature does not say which one of `x`'s 2 lifetimes it is borrowed from (Rust)E0106: missing life…E0597: borrowed value does not live long enough — Rust: error[E0597]: `x` does not live long enough — borrowed value does not live long enough (Rust)E0597: borrowed val…E0752: main function is not allowed to be async — Rust: error[E0752]: `main` function is not allowed to be `async` (Rust)E0752: main functio…E0716: temporary value dropped while borrowed — Rust: error[E0716]: temporary value dropped while borrowed — creates a temporary value which is freed while still in use (Rust)E0716: temporary va…Cannot access a disposed context instance — ObjectDisposedException: Cannot access a disposed context instance (.NET)Cannot access a dis…E0382 — Rust: error[E0382]: borrow of moved value: `x` (Rust)E0382E0308 — Rust: error[E0308]: mismatched types — expected `X`, found `Y` (Rust)E0308undefined reference to pthread_create — C/C++: undefined reference to `pthread_create' — missing -pthread (also `dlopen`, `clock_gettime`) (C/C++)undefined reference…terminate called without an active exception — C++: terminate called without an active exception — std::thread destroyed while joinable (C/C++)terminate called wi…E0505: cannot move out of value because it is borrowed — Rust: error[E0505]: cannot move out of `s` because it is borrowed (Rust)E0505: cannot move …cargo: failed to select a version for the requirement — Cargo: error: failed to select a version for the requirement `serde = "^2.0"` — candidate versions found which didn't match: 1.0.197 (Rust)cargo: failed to se…cargo: failed to get from registry (spurious network error) — Cargo: warning: spurious network error (2 tries remaining): [35] SSL connect error / error: failed to download from `https://index.crates.io/...` (Rust)cargo: failed to ge…Blocking waiting for file lock on package cache / build directory — Cargo: Blocking waiting for file lock on package cache / on build directory (Rust)Blocking waiting fo…E0499: cannot borrow as mutable more than once at a time — Rust: error[E0499]: cannot borrow `v` as mutable more than once at a time (Rust)E0499: cannot borro…E0596: cannot borrow as mutable, as it is not declared as mutable — Rust: error[E0596]: cannot borrow `v` as mutable, as it is not declared as mutable (Rust)E0596: cannot borro…E0433: failed to resolve: use of undeclared type or module — Rust: error[E0433]: failed to resolve: use of undeclared type `HashMap` (Rust)E0433: failed to re…

Directly related (9)

E0502Rust

Rust: error[E0502]: cannot borrow `x` as mutable because it is also borrowed as immutable

You tried to mutate a value while an immutable reference to it is still in use.

E0373: closure may outlive the current functionRust

Rust: error[E0373]: closure may outlive the current function, but it borrows `v`, which is owned by the current function

A closure borrowing a local is passed somewhere that may outlive it (thread::spawn, tokio::spawn, returned closures).

there is no reactor running, must be called from the context of a Tokio 1.x runtimeRust

Rust: thread 'main' panicked: there is no reactor running, must be called from the context of a Tokio 1.x runtime

A Tokio API (timer, TCP, `tokio::spawn`) was used outside a running Tokio runtime.

E0728: await is only allowed inside async functions and blocksRust

Rust: error[E0728]: `await` is only allowed inside `async` functions and blocks

You used `.await` in a normal (sync) function or closure.

Cannot start a runtime from within a runtime (Tokio)Rust

Rust: thread 'main' panicked: Cannot start a runtime from within a runtime — a function like `block_on` tried to block a thread that drives async tasks

Blocking code (`block_on`, `reqwest::blocking`) was called inside an async context.

E0106: missing lifetime specifierRust

Rust: error[E0106]: missing lifetime specifier — this function's return type contains a borrowed value, but the signature does not say which one of `x`'s 2 lifetimes it is borrowed from

The compiler can't infer which input reference the returned/stored reference is tied to.

E0597: borrowed value does not live long enoughRust

Rust: error[E0597]: `x` does not live long enough — borrowed value does not live long enough

A reference outlives the value it points to (the value is dropped first).

E0752: main function is not allowed to be asyncRust

Rust: error[E0752]: `main` function is not allowed to be `async`

`async fn main()` needs a runtime attribute (Tokio/async-std), the std `main` can't be async.

E0716: temporary value dropped while borrowedRust

Rust: error[E0716]: temporary value dropped while borrowed — creates a temporary value which is freed while still in use

A reference points to a temporary that's dropped at the end of the statement.

Two steps away (12)

Cannot access a disposed context instance.NET

ObjectDisposedException: Cannot access a disposed context instance

Code used a DbContext after its scope ended — usually async void, fire-and-forget tasks, or capturing a scoped context in a singl…

E0382Rust

Rust: error[E0382]: borrow of moved value: `x`

A value was moved (ownership transferred) and then used again.

E0308Rust

Rust: error[E0308]: mismatched types — expected `X`, found `Y`

A value’s type doesn’t match what the context expects — common with &str vs String, Option/Result vs plain values, and integer ty…

undefined reference to pthread_createC/C++

C/C++: undefined reference to `pthread_create' — missing -pthread (also `dlopen`, `clock_gettime`)

Your program uses threads (or another system library) but the linker was not told to link it.

terminate called without an active exceptionC/C++

C++: terminate called without an active exception — std::thread destroyed while joinable

A `std::thread` object was destroyed (or reassigned) while its thread was still running, so the C++ runtime called `std::terminat…

E0505: cannot move out of value because it is borrowedRust

Rust: error[E0505]: cannot move out of `s` because it is borrowed

You moved a value while a reference to it was still in use.

cargo: failed to select a version for the requirementRust

Cargo: error: failed to select a version for the requirement `serde = "^2.0"` — candidate versions found which didn't match: 1.0.197

Cargo can't find a version of a dependency satisfying the constraints you (or other crates) set.

cargo: failed to get from registry (spurious network error)Rust

Cargo: warning: spurious network error (2 tries remaining): [35] SSL connect error / error: failed to download from `https://index.crates.io/...`

Cargo couldn't reach crates.io (network, proxy, TLS or DNS issues).

Blocking waiting for file lock on package cache / build directoryRust

Cargo: Blocking waiting for file lock on package cache / on build directory

Another cargo process (or rust-analyzer/IDE) holds the lock, so this command waits.

E0499: cannot borrow as mutable more than once at a timeRust

Rust: error[E0499]: cannot borrow `v` as mutable more than once at a time

Two mutable references to the same value were alive at once, which Rust forbids.

E0596: cannot borrow as mutable, as it is not declared as mutableRust

Rust: error[E0596]: cannot borrow `v` as mutable, as it is not declared as mutable

You called a `&mut` method (or took `&mut`) on a binding/reference that isn't mutable.

E0433: failed to resolve: use of undeclared type or moduleRust

Rust: error[E0433]: failed to resolve: use of undeclared type `HashMap`

A path starts with a name that isn't in scope (a type or module you didn't import).