Commit Graph

62264 Commits

Author SHA1 Message Date
Corey Farwell
03a30b5646 Rollup merge of #40588 - topecongiro:add-missing-tests, r=alexcrichton
Add a test for issue 34571

Closes #34571.
2017-03-19 10:18:17 -04:00
Corey Farwell
c949f49c27 Rollup merge of #40583 - jseyfried:fix_include_macro_regression, r=nrc
macros: fix regression with `include!()`

Fixes #40469, a regression when `include!()`ing a `macro_rules!` containing `$crate`.
r? @nrc
2017-03-19 10:18:16 -04:00
Corey Farwell
a04c7de2cf Rollup merge of #40564 - GuillaumeGomez:rustdoc-const, r=frewsxcv
Fix const not displayed in rustdoc

Fixes #40331.

r? @rust-lang/docs
2017-03-19 10:18:15 -04:00
Corey Farwell
8287d0de0e Rollup merge of #40562 - mbrubeck:bootstrap, r=alexcrichton
Remove unused param from bootstrap::clean::rm_rf

None
2017-03-19 10:18:14 -04:00
Corey Farwell
9032ceae97 Rollup merge of #40445 - estebank:issue-18150, r=jonathandturner
Point to let when modifying field of immutable variable

Point at the immutable local variable when trying to modify one of its
fields.

Given a file:

```rust
struct Foo {
    pub v: Vec<String>
}

fn main() {
    let f = Foo { v: Vec::new() };
    f.v.push("cat".to_string());
}
```

present the following output:

```
error: cannot borrow immutable field `f.v` as mutable
 --> file.rs:7:13
  |
6 |    let f = Foo { v: Vec::new() };
  |        - this should be `mut`
7 |    f.v.push("cat".to_string());
  |    ^^^

error: aborting due to previous error
```

Fix #27593.
2017-03-19 10:18:13 -04:00
Corey Farwell
7b686ce4ca Rollup merge of #40441 - tschottdorf:promotable-rfc, r=eddyb
Add feature gate for rvalue-static-promotion

Probably needs more tests (which ones?) and there may be other things that need to be done. Also not sure whether the version that introduces the flag is really `1.15.1`.

See https://github.com/rust-lang/rfcs/pull/1414.

Updates #38865.
2017-03-19 10:18:12 -04:00
bors
9c15de4fd5 Auto merge of #40346 - jseyfried:path_and_tokenstream_attr, r=nrc
`TokenStream`-based attributes, paths in attribute and derive macro invocations

This PR
 - refactors `Attribute` to use  `Path` and `TokenStream` instead of `MetaItem`.
 - supports macro invocation paths for attribute procedural macros.
   - e.g. `#[::foo::attr_macro] struct S;`, `#[cfg_attr(all(), foo::attr_macro)] struct S;`
 - supports macro invocation paths for derive procedural macros.
   - e.g. `#[derive(foo::Bar, super::Baz)] struct S;`
 - supports arbitrary tokens as arguments to attribute procedural macros.
   - e.g. `#[foo::attr_macro arbitrary + tokens] struct S;`
 - supports using arbitrary tokens in "inert attributes" with derive procedural macros.
   - e.g. `#[derive(Foo)] struct S(#[inert arbitrary + tokens] i32);`
where `#[proc_macro_derive(Foo, attributes(inert))]`

r? @nrc
2017-03-19 10:56:08 +00:00
bors
bfc49b1092 Auto merge of #40538 - aturon:stab-1.17, r=alexcrichton
Library stabilizations for 1.17

Details of the stabilizations are available in the commits. Includes only library stabilizations; there are a couple of compiler stabilizations that should also be done for 1.17.

Will need a beta backport, which I will create after approval.

r? @alexcrichton
2017-03-19 01:40:57 +00:00
bors
4853584000 Auto merge of #40625 - alexcrichton:update-cargo-again, r=alexcrichton
Update the cargo submodule again

Unfortunately it was reverted back to a broken state in
e06c51553d by accident, so let's bring it forward
again!

Closes https://github.com/rust-lang/cargo/issues/3844
2017-03-18 15:22:29 +00:00
Alex Crichton
9fb737b7b5 Update the cargo submodule again
Unfortunately it was reverted back to a broken state in
e06c51553d by accident, so let's bring it forward
again!
2017-03-17 20:47:35 -07:00
bors
df3ab375f3 Auto merge of #40507 - alexcrichton:static-libcurl, r=brson
travis: Ensure cargo links libcurl statically

We don't want a dynamic dependency in the library that we ship, so link it
statically by configuring curl-sys's build script to not pick up the system
version via pkg-config.
2017-03-18 03:31:58 +00:00
bors
703b246287 Auto merge of #40482 - wagenet:fix-old-macos, r=alexcrichton
Target builds for older macOS

Fix #40481
2017-03-18 00:40:10 +00:00
Jeffrey Seyfried
cb96adea15 Fix regression when include!()ing a macro_rules! containing a $crate:: path. 2017-03-17 22:20:41 +00:00
Alex Crichton
1241a88fa9 Minor fixups to fix tidy errors 2017-03-17 13:28:53 -07:00
Aaron Turon
a8f4a1bd98 Stabilize rc_raw feature, closes #37197 2017-03-17 13:28:53 -07:00
Aaron Turon
48890d4971 Stabilize ordering_chaining, closes #37053 2017-03-17 13:28:53 -07:00
Aaron Turon
37b38a2f75 Stabilize btree_range, closes #27787 2017-03-17 13:28:37 -07:00
Aaron Turon
10510aefb1 Stabilize ptr_eq feature, closes #36497 2017-03-17 13:28:37 -07:00
Aaron Turon
9511fe60ce Stabilize process_abort feature, closes #37838 2017-03-17 13:28:37 -07:00
Aaron Turon
d38ea8b371 Stabilize ptr_unaligned feature, closes #37955 2017-03-17 13:28:37 -07:00
Aaron Turon
65b7c4ed31 Stabilize expect_err feature, closes #39041 2017-03-17 13:28:37 -07:00
Aaron Turon
33a5665988 Stabilize move_cell feature, closes #39264 2017-03-17 13:28:37 -07:00
bors
a559452b05 Auto merge of #40598 - frewsxcv:rollup, r=frewsxcv
Rollup of 23 pull requests

- Successful merges: #40387, #40433, #40452, #40456, #40457, #40458, #40463, #40466, #40467, #40495, #40496, #40497, #40499, #40500, #40503, #40505, #40512, #40514, #40517, #40520, #40536, #40545, #40586
- Failed merges:
2017-03-17 17:26:52 +00:00
bors
9fae0405e9 Auto merge of #40575 - alexcrichton:update-sccache, r=alexcrichton
travis: Update sccache binary

I've built a local copy with mozilla/sccache#79 and mozilla/sccache#78. Let's
see if that helps #40240!
2017-03-17 14:32:28 +00:00
Alex Crichton
bbfdb56910 travis: Use hide_output in dist-powerpc64-linux
Looks like we blew the 4MB cap, so let's hide some more output.
2017-03-17 07:12:56 -07:00
Corey Farwell
3bec563958 Rollup merge of #40586 - steveklabnik:add-unstable-sort-to-unstable-book, r=frewsxcv
add sort_unstable to unstable book

cc #40585
2017-03-17 08:49:10 -04:00
Corey Farwell
b71e5f7b1f Rollup merge of #40545 - alexcrichton:retry-download-openssl, r=nikomatsakis
rustbuild: Retry downloads of OpenSSL source

We need this to compile Cargo and we download it at build time, but as like all
other network requests it has a chance of failing. This commit moves the source
of the tarball to a mirror (S3 seems semi-more-reliable most of the time) and
also wraps the download in a retry loop.

cc #40474
2017-03-17 08:49:09 -04:00
Corey Farwell
dc1deeb9b4 Rollup merge of #40536 - kevinmehall:dedup_docs_for_dedup_by, r=steveklabnik
Fix documentation for Vec::dedup_by.

The previous docstring was copied from dedup_by_key.
2017-03-17 08:49:08 -04:00
Corey Farwell
2ba4a63696 Rollup merge of #40520 - steveklabnik:link-core-slice, r=alexcrichton
Link core::slice to std::slice
2017-03-17 08:49:07 -04:00
Corey Farwell
6831180ca2 Rollup merge of #40517 - rust-lang:release-notes-tweak, r=alexcrichton
Remove incorrect feature from the 1.16 relnotes

According to @golddranks https://internals.rust-lang.org/t/rust-1-16-0-prerelease-testing/4953/3

r? @brson
2017-03-17 08:49:06 -04:00
Corey Farwell
f90fab5b26 Rollup merge of #40514 - stjepang:inline-then-ordering, r=alexcrichton
Inline functions Ordering::{then, then_with}

@jongiddy noticed bad performance due to the lack of inlining on `then`
and `then_with`. I confirmed that inlining really is the culprit by
creating a custom `then` function and repeating his benchmark on my
machine with and without the `#[inline]` attribute.

The numbers were exactly the same on my machine without the attribute.
With `#[inline]` I got the same performance as I did with manually
inlined implementation.

The problem was reported in #37053.
2017-03-17 08:49:05 -04:00
Corey Farwell
1909b62e79 Rollup merge of #40512 - nodakai:patch-1, r=alexcrichton
.gitmodules: use official URLs w/o redirect
2017-03-17 08:49:04 -04:00
Corey Farwell
f47a377c6e Rollup merge of #40505 - frewsxcv:hash-docs, r=alexcrichton
A few improvements to the `core::hash` top-level docs.

Primarily opened to address the concerns brought up in
https://github.com/rust-lang/rust/issues/40498.

* run rustfmt on code blocks
* use `DefaultHasher` instead of deprecated `SipHasher`
* rename `hash` to `calculate_hash` to prevent confusion with the `hash`
  method
2017-03-17 08:49:03 -04:00
Corey Farwell
d7a09d4e65 Rollup merge of #40503 - swgillespie:thread-hack-removal, r=sfackler
std: remove a workaround for privacy limitations

`std:🧵:Thread` implements a non-exported `NewThread` trait to allow for internal-only use of `Thread::new`. Nowadays we have `pub(crate)`, which accomplishes the same thing but much more idiomatically.

Rustdoc handles this correctly (I checked and I didn't see `Thread::new` on the rustdoc entry for `Thread` with this change), and the stage1 `rustc` emits the correct error still (I'm assuming that the stage1 compiler uses my `libstd`?):

```
$ ./build/x86_64-apple-darwin/stage1/bin/rustc test.rs
error: method `new` is private
 --> test.rs:4:18
  |
4 |     let thread = thread::Thread::new(None);
  |                  ^^^^^^^^^^^^^^^^^^^

error: aborting due to previous error
```
2017-03-17 08:49:02 -04:00
Corey Farwell
5aab3b97af Rollup merge of #40500 - estebank:turbofish-help, r=pnkfelix
Point out correct turbofish usage on `Foo<Bar<Baz>>`

Whenever we parse a chain of binary operations, as long as the first
operation is `<` and the subsequent operations are either `>` or `<`,
present the following diagnostic help:

    use `::<...>` instead of `<...>` if you meant to specify type arguments

This will lead to spurious recommendations on situations like
`2 < 3 < 4` but should be clear from context that the help doesn't apply
in that case.

Fixes #40396.
2017-03-17 08:49:01 -04:00
Corey Farwell
e389f6a67e Rollup merge of #40499 - ericfindlay:master, r=steveklabnik
Corrected very minor documentation detail about Unicode and Japanese

Japanese half-width and full-width romaji characters do have upper and lowercase according Unicode (but other Japanese characters do not). For example,
` assert_eq!('\u{FF21}'.to_lowercase().collect::<String>(),"\u{FF41}");`

r? @steveklabnik
2017-03-17 08:49:00 -04:00
Corey Farwell
3ebce67ca3 Rollup merge of #40497 - wesleywiser:fix_sidebar, r=GuillaumeGomez
Fix sidebar not extending to the bottom of the page

Fixes #40459
2017-03-17 08:48:59 -04:00
Corey Farwell
f9236bdfcc Rollup merge of #40496 - projektir:docs_number_headings, r=frewsxcv
Using X headings #39850

Fix for issue #39850, the headings should now be 1, 2, and 3.
2017-03-17 08:48:58 -04:00
Corey Farwell
4fbd8849d9 Rollup merge of #40495 - llogiq:format-docs, r=steveklabnik
fix format grammar

This is just a trivial change to get the escaped squigglies into the grammar.

r? @steveklabnik
2017-03-17 08:48:57 -04:00
Corey Farwell
dcf5f071a3 Rollup merge of #40467 - projektir:readme_docs, r=steveklabnik
Updating README.md to point to the correct doc location
2017-03-17 08:48:56 -04:00
Corey Farwell
127c3ad362 Rollup merge of #40466 - projektir:outdated_docs_highlighting, r=steveklabnik
Remove doc about highlighting code in other languages #40301

This doesn't appear to be true any longer, so removing it to avoid confusion. See #40301

Thoughts:
- may be a good idea to remove "Let's discuss the details of these code blocks.", as there's not much being discussed at this point;
- does `text` still work?

r? @steveklabnik
2017-03-17 08:48:55 -04:00
Corey Farwell
cfca6fccb9 Rollup merge of #40463 - tshepang:nit, r=nikomatsakis
some style fixes
2017-03-17 08:48:54 -04:00
Corey Farwell
695d7ecd05 Rollup merge of #40458 - frewsxcv:frewsxcv-osstr, r=GuillaumeGomez
Add doc examples for `OsStr`, `OsString`.

None
2017-03-17 08:48:53 -04:00
Corey Farwell
dee6989b43 Rollup merge of #40457 - frewsxcv:frewsxcv-macos, r=steveklabnik
Update usages of 'OSX' (and other old names) to 'macOS'.

As of last year with version 'Sierra', the Mac operating system is now
called 'macOS'.
2017-03-17 08:48:52 -04:00
Corey Farwell
69717170a4 Rollup merge of #40456 - frewsxcv:frewsxcv-docs-function-parens, r=GuillaumeGomez
Remove function invokation parens from documentation links.

This was never established as a convention we should follow in the 'More
API Documentation Conventions' RFC:

https://github.com/rust-lang/rfcs/blob/master/text/1574-more-api-documentation-conventions.md
2017-03-17 08:48:51 -04:00
Corey Farwell
739d89aef5 Rollup merge of #40452 - frewsxcv:frewsxcv-unstable-docs, r=GuillaumeGomez
Add basic documentation/examples for six unstable features.
2017-03-17 08:48:50 -04:00
Corey Farwell
01ad185071 Rollup merge of #40433 - mattico:test-issue-29595, r=estebank
Add test for issue #29595

Closes #29595

Couldn't get this to run locally, all the compile-fail tests are ignored... let's see what Travis says.
2017-03-17 08:48:49 -04:00
Corey Farwell
70e7327b4e Rollup merge of #40387 - tbu-:pr_doc_ptr_write2, r=steveklabnik
Reword the non-dropping of `src` for `ptr::write{,_unaligned}`

@niconii Is it OK if I put your wording into the documentation?
CC @nagisa
2017-03-17 08:48:48 -04:00
bors
f77ee2ff0f Auto merge of #40539 - clarcharr:no_default_path, r=alexcrichton
Removes Default for Box<Path>.

This was not supposed to be added. cc @alexcrichton
2017-03-17 11:55:34 +00:00
bors
b3234cd427 Auto merge of #40526 - brson:docs-req, r=alexcrichton
Make docs required again

Completely untested. Fixes https://github.com/rust-lang-nursery/rustup.rs/issues/903

r? @alexcrichton cc @steveklabnik
2017-03-17 09:22:09 +00:00