Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 6 pull requests #29900

Merged
merged 69 commits into from
Nov 18, 2015
Merged

Rollup of 6 pull requests #29900

merged 69 commits into from
Nov 18, 2015

Conversation

bltavares and others added 30 commits November 2, 2015 23:52
Sometimes when writing generic code you want to abstract over
owning/pointer type so that calling code isn't restricted by one
concrete owning/pointer type. This commit makes possible such code:
```
fn i_will_work_with_arc<T: Into<Arc<MyTy>>>(t: T) {
    let the_arc = t.into();
    // Do something
}

i_will_work_with_arc(MyTy::new());

i_will_work_with_arc(Box::new(MyTy::new()));

let arc_that_i_already_have = Arc::new(MyTy::new());
i_will_work_with_arc(arc_that_i_already_have);
```

Please note that this patch doesn't work with DSTs.
under openbsd, the library path of libstdc++ need to be explicit (due
to the fact the default linker `cc` is gcc-4.2, and not gcc-4.9).

but when a recent LLVM is installed, rustc compilation pikes the bad
LLVM version (which live in /usr/local/lib, which is same directory of
libestdc++.so for gcc-4.9).

this patch move the libstdc++ path from RUST_FLAGS_<target> to special
variable, and use it *after* LLVM_LIBDIR_RUSTFLAGS_<target> in
arguments.
The command-line error message for E0432 does mention the possibility of
missing the `extern crate` declaration, but the detailed error message
for it doesn't.

Fixes rust-lang#29517.
Fixes rust-lang#29853
Fixes rust-lang#29852

While these points are true, we're not going for 100% accuracy here,
this is introductory material. Changing these things would be more
confusing, but it is important to note that we're presenting an
abstraction here.
…alexcrichton

Sometimes when writing generic code you want to abstract over
owning/pointer type so that calling code isn't restricted by one
concrete owning/pointer type. This commit makes possible such code:
```rust
fn i_will_work_with_arc<T: Into<Arc<MyTy>>>(t: T) {
    let the_arc = t.into();
    // Do something
}

i_will_work_with_arc(MyTy::new());

i_will_work_with_arc(Box::new(MyTy::new()));

let arc_that_i_already_have = Arc::new(MyTy::new());
i_will_work_with_arc(arc_that_i_already_have);
```

Please note that this patch doesn't work with DSTs.
Also to mention, I made those impls stable, and I don't know whether they should be actually stable from the beginning. Please tell me if this should be feature-gated.
They can be useful for constructing constant items.
I noticed the nomicon was not listed!

I also removed links to racer and rustfmt since they were not *doc-specific* links, just links to tools, as well as pointed the cargo link directly at the docs.

Removed all the community stuff. There are lots of other places to find this now, including the website.

With pending website changes this page will continue to be pared back, reflecting only what's in-tree, not general Rust docs.

r? @steveklabnik
…te, r=steveklabnik

The command-line error message for E0432 does mention the possibility of missing the `extern crate` declaration, but the detailed error message for it doesn't.

Fixes rust-lang#29517.
Duplicate entries removed. This doesn't quite completely allow for generating AUTHORS.txt from scratch but it's much closer now.
Manishearth and others added 18 commits November 17, 2015 15:12
…chton

With this change the build on FreeBSD is almost working again.
Change conditional perfect to past perfect.
[breaking change]

I'm not sure if those renames are ok. [TokenType::Tt* to TokenType::*](rust-lang#29582) was obvious, but for all those Item-enums it's less obvious to me what the right way forward is due to the underscore.
First, re-word the section on if let/while let to be more clear.

Second, actually call them let statements in the statement section

Fixes rust-lang#29801
libcore does have a few deps, like noted in rust-lang#29390

Fixes rust-lang#29502
First, re-word the section on if let/while let to be more clear.

Second, actually call them let statements in the statement section

Fixes rust-lang#29801
…excrichton

And modifying IntoIterator for consisntency with it.

Part of rust-lang#29360
@steveklabnik
Copy link
Member Author

@bors: r+ p=1

@bors
Copy link
Contributor

bors commented Nov 17, 2015

📌 Commit 5c99fb7 has been approved by steveklabnik

@rust-highfive
Copy link
Collaborator

r? @nikomatsakis

(rust_highfive has picked a reviewer for you, use r? to override)

@steveklabnik
Copy link
Member Author

the all-steve rollup today, i guess

@bors
Copy link
Contributor

bors commented Nov 17, 2015

⌛ Testing commit 5c99fb7 with merge 277416e...

bors added a commit that referenced this pull request Nov 17, 2015
@bors bors merged commit 5c99fb7 into rust-lang:master Nov 18, 2015
@Centril Centril added the rollup A PR which is a rollup label Oct 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rollup A PR which is a rollup
Projects
None yet
Development

Successfully merging this pull request may close these issues.