Update documentation for from_raw_parts

Fixes #19269.
Lifetime guide -> ownership guide
impl Clone for Cow
small doc fixes

We don't need this &mut, and vec could use []s
fix expand_quote_ty function as parse_ty was changed and needs no arguments now
Fix typo in reference.md
Allow trailing commas in array patterns and attributes
Simplify `RefCell` code a bit, make `deref` a no-op.
allow macro expansions in attributes
std: Remove implicit shrinking from hash_map.

Implements fn shrink_to_fit for HashMap.
std: Change the behavior of `reserve` for HashMap.

HashMap's `reserve` method now takes as an argument the *extra* space
to reserve.

[breaking-change]
std: add tests for the Vec<u8> Writer impl
std: add Reader impl for &[u8]
Add test for expanding doc strings in macros.
added negative test for macro expansion in attributes
liblibc: getsid() was missing though setsid() was already there.

include <unistd.h>

pid_t getsid(pid_t pid);

CONFORMING TO
       SVr4, POSIX.1-2001.

Signed-off-by: NODA, Kai <nodakai@gmail.com>
test/run-make: another missing $(EXTRACFLAGS).

rust-lang/rust@102b1a5bf1a60eeafb752844e5c98fe5f4e3b992 was not enough!

Signed-off-by: NODA, Kai <nodakai@gmail.com>
auto merge of #19439 : nodakai/rust/liblibc-getsid, r=acrichto

```
#include <unistd.h>

pid_t getsid(pid_t pid);

CONFORMING TO
       SVr4, POSIX.1-2001.
```
debuginfo: Fix multi-byte character related bug in cleanup scope handling.

Also see issue #18791.
Pop on binary heaps does not have constant time complexity.

pop calls siftdown, siftdown calls siftdown_range, and siftdown_range
loops on an index that can start as low as 0 and approximately doubles
each iteration.