>[breaking-change] the entry!, pre_init! and exception! macros have been replaced with attributes: #[entry], #[pre_init] and #[exception], respectively.
9a4a260398/CHANGELOG.md (v060---2018-09-06)
The gcc-arm-embedded cask has been removed in favour of a not-yet-implemented normal homebrew formula.
I've tried the above however (as documented in the linked casks PR) and it works as advertised for now.
Building the previous main.rs failed with: ERROR(cortex-m-rt): The interrupt vectors are missing.
Including the microbit crate in the example fixes this.
Otherwise you get the following build error:
```
error: expected item after attributes
--> src/main.rs:8:8
|
8 | #[entry];
| ^
```
This one confused me for awhile.
When trying to follow the Getting Started->Building instructions, the
`panic-abort` crate throws the following build error on rust stable
version 1.33:
```
Compiling panic-abort v0.3.1
error[E0554]: #![feature] may not be used on the stable release channel
--> /home/mike/.cargo/registry/src/github.com-1ecc6299db9ec823/panic-abort-0.3.1/src/lib.rs:22:1
|
22 | #![feature(core_intrinsics)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error[E0554]: #![feature] may not be used on the stable release channel
--> /home/mike/.cargo/registry/src/github.com-1ecc6299db9ec823/panic-abort-0.3.1/src/lib.rs:23:1
|
23 | #![feature(panic_handler)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
error: aborting due to 2 previous errors
For more information about this error, try `rustc --explain E0554`.
error: Could not compile `panic-abort`.
To learn more, run the command again with --verbose.
```
Switch to the `panic-halt` crate that builds on stable and provides the
`#[panic_handler]` function necesary to get a minimal successful build.