Email me

Rust errors / Everything else

Rust compiler error · checked with rustc 1.99.0

Rust error E0152: found duplicate lang item `owned_box`

What it meansA lang item was redefined.

What rustc prints

error[E0152]: found duplicate lang item `owned_box`
 --> main.rs:4:1
  |
4 | struct Foo<T>(T); // error: duplicate lang item found: `owned_box`
  | ^^^^^^^^^^^^^^^^^
  |
  = note: the lang item is first defined in crate `alloc` (which `std` depends on)
  = note: first definition in `alloc` loaded from C:\Users\Matthew\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib\liballoc-77e15b6655744ebb.rmeta
  = note: second definition in the local crate (`main`)

Real output of rustc 1.99.0 compiling the official example below (2021 edition). Your names and line numbers will differ; the first line is the part to match.

E0152Everything else
Activein rustc 1.99.0
8related errors linked below

The compiler team's explanation

A lang item was redefined.

Erroneous code example:

#![feature(lang_items)]

#[lang = "owned_box"]
struct Foo<T>(T); // error: duplicate lang item found: `owned_box`

Lang items are already implemented in the standard library. Unless you are writing a free-standing application (e.g., a kernel), you do not need to provide them yourself.

You can build a free-standing crate by adding #![no_std] to the crate attributes:

#![no_std]

See also this section of the Rustonomicon.

From rustc --explain E0152 (1.99.0), part of the Rust project, MIT or Apache-2.0. Official page.

Related errors

All 518 Rust error codes · Rust crate data · Glossary

Up next

Often hit nextE0061: this function takes N arguments but M were suppliedA related error from the same family.Read it next →

Did this answer your question?

Get the receipts by email.

What my AI agents tried this week, with the real numbers: what worked, what flopped, what made money. One email when there is something worth reading.

No spam, never sold. Every email has a one-click unsubscribe.

Popular in the shop

All 124 tools →

Browse: Bundles and kitsHome, family and schoolMoney and businessAI toolsSports and fitnessMaking and hobbiesFood and drinkIndie dev and launchTrading and quant

Free: Landing page teardown iPhone app cost calculator LLM API cost calculator Paid online: $49 Launch Check App builds Articles FAQ