| A lang item was redefined. | |
| Erroneous code example: | |
| ```compile_fail,E0152 | |
| #![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: | |
| ```ignore (only-for-syntax-highlight) | |
| #![no_std] | |
| ``` | |
| See also [this section of the Rustonomicon][beneath std]. | |
| [beneath std]: https://doc.rust-lang.org/nomicon/beneath-std.html |