Auto merge of #21257 - alexcrichton:issue-20064, r=pnkfelix
These two attributes are used to change the entry point into a Rust program, but
for now they're being put behind feature gates until we have a chance to think
about them a little more. The #[start] attribute specifically may have its
signature changed.
This is a breaking change to due the usage of these attributes generating errors
by default now. If your crate is using these attributes, add this to your crate
root:
#![feature(start)] // if you're using the #[start] attribute
#![feature(main)] // if you're using the #[main] attribute
cc #20064
This commit is contained in:
commit
e375a892f1
26 changed files with 71 additions and 13 deletions
|
|
@ -447,7 +447,7 @@ in the same format as C:
|
|||
|
||||
```
|
||||
#![no_std]
|
||||
#![feature(lang_items)]
|
||||
#![feature(lang_items, start)]
|
||||
|
||||
// Pull in the system libc library for what crt0.o likely requires
|
||||
extern crate libc;
|
||||
|
|
@ -475,7 +475,7 @@ compiler's name mangling too:
|
|||
```ignore
|
||||
#![no_std]
|
||||
#![no_main]
|
||||
#![feature(lang_items)]
|
||||
#![feature(lang_items, start)]
|
||||
|
||||
extern crate libc;
|
||||
|
||||
|
|
@ -529,7 +529,7 @@ vectors provided from C, using idiomatic Rust practices.
|
|||
|
||||
```
|
||||
#![no_std]
|
||||
#![feature(lang_items)]
|
||||
#![feature(lang_items, start)]
|
||||
|
||||
# extern crate libc;
|
||||
extern crate core;
|
||||
|
|
@ -653,7 +653,7 @@ sugar for dynamic allocations via `malloc` and `free`:
|
|||
|
||||
```
|
||||
#![no_std]
|
||||
#![feature(lang_items, box_syntax)]
|
||||
#![feature(lang_items, box_syntax, start)]
|
||||
|
||||
extern crate libc;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue