New Guide: crates and modules
speed up static linking by combining `ar` invocations
auto merge of #15956 : steveklabnik/rust/guide_crates, r=pcwalton

Also fixes a couple of filesystem references that I forgot to change. :sweat_smile:
Update disclaimer to improve clarity and intent
librustc: Typeck & record the count expr in TyFixedLengthVec.
libsyntax: Don't ICE on macro invocation in count expr of fixed array type.
Add pretty=typed test support to compiletest and add a test for fixed size arrays.
lint: Improve ffi-unsafe enum lint warning

I think this is an improvement of the previous warning message, which
- like the comment that I removed implies - is in need of some
improvement.
I've opted to point the user in the right direction w.r.t how to fix the
problem, which I think is good form.

Not being familiar with the repr(...) attribute, I personally had to
check the lint rules myself to figure out what was wrong. Hopefully,
this will save he next person some time and headache.

Signed-off-by: Anton Lofgren <alofgren@op5.com>
Rename Integer trait `divides` to `is_multiple_of`.

It is being changed because the previous wording was ambiguous.
`a.divides(b)` implied `a % b == 0` but it sounds like the other way
around. `9.divides(&3) == true` but we might read that as
"does 9 divide 3?".  It has been renamed to sidestep the ambiguity.

Work around the change by using `is_multiple_of` instead.

[breaking-change]
manual: update list of feature gates, add phase attribute
Improve documentation of rounding functions
Remove references to non-existant functions in the std::path documentation
Fix documentation error in MutableVectorAllocating::move_from

Correct `str` to `src`
adding discuss.rust-lang to community
rustc: Switch dsymutil status => output

Sometimes dsymutil writes to stdout/stderr which rust isn't reading, which may
cause a deadlock.

Closes #16060
making raw source display better

* Make the code fill up the full width of the page (no massive whitespace on the left)
* Move the code down to make it not intersect the logo
* Set a min-width and remove the max-width so that the code doesn't scroll internally, but instead scrolls the page, meaning horizontal scroll bars are always available
* Set overflow to actually overflow, just to be sure

Fixes #15891
doc: add missing word
Update LLVM to fix miscompilations due to wrongfully removed lifetime intrinsics

Fixes #15972 and #16011.
Elide lifetimes around Arc<T>.

It's a small step forward in application of RFC 39 to the code base
itself.

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
Gedit/gtksourceview language spec: add raw strings

… and color (raw) strings as such in attributes.
This fixes cases where a string contains ] inside an attribute:
that ] used to incorrectly end the attribute coloring.

For large (many lines) doc comments, I’ve found preferable to use
`#![doc = r#"..."#]` to avoid prefixing every line with `//!`.