The problem is we don't link against libc by default, and `__morestack` seems to need some symbols from libc; and there's no way to specify compilation flags to rustdoc.

```rust
// nostd.rs
#[no_std];

#[no_mangle] pub extern fn rust_stack_exhausted() {}

#[start]
fn main(_argc: int, _argv: **u8) -> int { 0 }
```

```
$ rustc nostd.rs
[...]
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o: In function `_start':
(.text+0x12): undefined reference to `__libc_csu_fini'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o: In function `_start':
(.text+0x19): undefined reference to `__libc_csu_init'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o: In function `_start':
(.text+0x25): undefined reference to `__libc_start_main'
```

I'm nonspecific about details in this section because I don't really know them.