Define a new setting g:rust_fold

g:rust_fold allows folding to be enabled. This lets the user turn on
folding without having to define autocommands.
Set softtabstop, textwidth, and optionally colorcolumn

Setting softtabstop makes <Del> delete 4 spaces as if it were a tab.

Setting textwidth allows comments to be wrapped automatically. It's set
at 80, which is the recommended line length for Rust programs. There are
suggestions that it should be 79, but our current style guide says 80 so
that's what we're matching.

A new setting g:rust_colorcolumn sets colorcolumn as well, to +1,101.
This indicates both the textwidth and the second stricter line length of
100 that our style guide lists.
Remove rust_colorcolumn, set textwidth to 99

The latest change to aturon/rust-guidelines states that lines must not
exceed 99 characters. This gets rid of the 80/100 split, so we don't
need to customize colorcolumn amymore.
mandelbrot: fix overlapping buffers
Borrow checking for overloaded indexing

Closes #15525
Fix cargo install instructions

Cargo now comes with Rust
use trait rather than fns

please note the snapshot-waiting unpleasantness. I'm
unable to use the traditional #[cfg(stage0)] mechanism
to swap the new style in for later compiler stages,
because macros invocations in method positions cause
the parser to choke before cfg can strip it out.

Parenthetical note: this problem wouldn't arise with
an interleaved parsing/expansion....
change to new trait style for method field refs

Per @pnkfelix 's suggestion, using a trait to make these
field accesses more readable (and vastly more similar
to the original code.

oops fix new ast_map fix
Support for specifying the code model

The default code model is usually unsuitable for kernels,
so we add an option to specify which model we want.
mk: Fix LD_LIBRARY_PATH_ENV_NAMES in cross build
obsolete.rs: fix typo in message
rustc.1: fix typo

Uses the same wording as ``config.rs`` now.
complement-lang-faq.md: fix typos
debuginfo: Add python formatters that allow LLDB to print values with Rust syntax
debuginfo: Inject 'Rust-mode' LLDB prelude into debuginfo test scripts.
debuginfo: Remove atexit()-debugger shutdown from lldb_batchmode.py

The shutdown call would always result in an exception being printed to standard error.
debuginfo: Add LLDB autotests to debuginfo test suite.

This commit adds LLDB autotests to the test suite but does not activate them by default yet.
debuginfo: Make sure that only one LLDB test task is run at a time.

Some older versions of LLDB have problems with multiple instances running in parallel. This commit makes sure we don't do that.
debuginfo: Don't crash when encountering global variable with unknown source span.
Add an option to disable the use of the redzone

Disabling the redzone is required in x86-64's kernel mode to avoid interrupts trashing the stack.