Commit Graph

73199 Commits

Author SHA1 Message Date
bors
966fdf15e2 Auto merge of #46883 - QuietMisdreavus:faildown, r=GuillaumeGomez
rustdoc: add option to abort the process on markdown differences

In the efforts of keeping the std docs free of markdown warnings, this PR adds a stopgap measure to make sure the CI fails if it detects a markdown difference. It does this by adding a new unstable flag to rustdoc, `--deny-render-differences`, which bootstrap then passes to rustdoc when documenting std and friends.

The implementation is... probably not the cleanest option. It currently adds an extra branch after it prints the markdown warnings, which just prints a final line and calls `::std::process::abort(1)`. I did it like this because if it just panics regularly, it looks like an ICE, an even though `html::render::run` returns a Result, that Result is also just `expect`ed immediately, generating the same problem. This way bypasses the panic handler at the top of the thread and looks like a proper failure. Since i don't have a real error Handler there, this is the best i can do without pulling in a real error system for rustdoc.

This PR is blocked on https://github.com/rust-lang/rust/pull/46853, which will fix the rendering differences that were present on master when i started this branch.
2017-12-29 03:23:37 +00:00
bors
ec9be91e43 Auto merge of #47050 - ollie27:rustdoc_import_links, r=QuietMisdreavus
rustdoc: Don't try to generate links for modules in import paths

The modules may be private or may even be enums so it would generate dead links.

Fixes #29814
Fixes #46766
Fixes #46767
2017-12-29 00:41:49 +00:00
bors
b84385b23b Auto merge of #47047 - EdSchouten:rt-unused-import, r=estebank
Remove an unused import for cfg(not(feature = "backtrace")).

The 'mem' module is not used for this specific code. This was
copy-pasted in by accident when adding RFC 1937 (? in main) support.
2017-12-28 21:53:50 +00:00
bors
77e189cd79 Auto merge of #47036 - QuietMisdreavus:i-like-big-chars, r=frewsxcv
update char_indices example to highlight big chars

There was a comment today in IRC where someone thought `char_indices()` and `chars().enumerate()` were equivalent, so i wanted to put an example in the docs where that wasn't true.

r? @rust-lang/docs
2017-12-28 19:06:39 +00:00
Igor Matuszewski
d332277819 Update RLS 2017-12-28 20:06:29 +01:00
Oliver Middleton
95f9491bc7 rustdoc: Don't try to generate links for modules in import paths
The modules may be private or may even be enums so it would generate dead links.
2017-12-28 17:51:31 +00:00
Eduard-Mihai Burtescu
9863d35cd6 Always name git submodules by their paths. 2017-12-28 19:20:19 +02:00
Matt Peterson
f55242583c Cleanup 2017-12-28 11:52:50 -05:00
Matt Peterson
0f9c9b66bb Add an entry in the unstable book 2017-12-28 11:33:44 -05:00
Matt Peterson
b284419064 Add feature gate macro_lifetime_matcher 2017-12-28 11:33:44 -05:00
Matt Peterson
e838cfce03 Cleanup 2017-12-28 11:32:05 -05:00
Matt Peterson
ce76b1a1f3 Fix tests 2017-12-28 11:32:05 -05:00
Matt Peterson
0e53360af6 Fix build and add a macro lifetime labels test 2017-12-28 11:32:05 -05:00
Michael Hewson
e12b87096a replace parse_lifetime with expect_lifetime
made `parser::Parser::expect_lifetime` public, so it can be called from `macro_parser::parse_nt`
2017-12-28 11:32:05 -05:00
Michael Hewson
03a51019a4 Resurrecting #33135
Started rebasing @sgrif's PR #33135 off of current master. (Well, actually merging it into a new branch based off current master.)

The following files still need to be fixed or at least reviewed:

- `src/libsyntax/ext/tt/macro_parser.rs`: calls `Parser::parse_lifetime`, which doesn't exist anymore
- `src/libsyntax/parse/parser.rs`: @sgrif added an error message to `Parser::parse_lifetime`. Code has since been refactored, so I just took it out for now.
- `src/libsyntax/ext/tt/transcribe.rs`: This code has been refactored bigtime. Not sure whether @sgrif's changes here are still necessary. Took it out for this commit.
2017-12-28 11:32:05 -05:00
bors
06c8b385d1 Auto merge of #47021 - shssoichiro:46576-Incorrect-Span-Imports, r=estebank
Pass correct span when lowering grouped imports

Solves incorrect diagnostics for unused or deprecated imports. Closes #46576.

Deprecated imports had an existing test which asserted the incorrect span.
That test has been corrected as part of this commit.
2017-12-28 16:16:46 +00:00
Ed Schouten
bd812d9259 Remove an unused import for cfg(not(feature = "backtrace")).
The 'mem' module is not used for this specific code. This was
copy-pasted in by accident when adding RFC 1937 (? in main) support.
2017-12-28 14:49:31 +01:00
bors
4352c11dd0 Auto merge of #46954 - davidalber:fix-contributor-covenant-link, r=alexcrichton
Updating Contributor Covenant links

The current link 301s to a new destination.

```sh
$ curl -I http://contributor-covenant.org/version/1/3/0/
HTTP/1.1 301 Moved Permanently
Cache-Control: public, max-age=0, must-revalidate
Content-Length: 0
Content-Type: text/plain
Date: Fri, 22 Dec 2017 21:13:09 GMT
Location: https://www.contributor-covenant.org/version/1/3/0/
Age: 1
Connection: keep-alive
Server: Netlify
```

rust-lang/rust-www#994 fixes this in the Rust site.
2017-12-28 13:24:21 +00:00
bors
b24d12e622 Auto merge of #47031 - topecongiro:issue-41719, r=jseyfried
Report an error when resolving non-ident macro path failed

Closes #41719.

Please feel free to bikeshed on the error message.
2017-12-28 10:28:16 +00:00
bors
5f7aeaf6e2 Auto merge of #47013 - topecongiro:issue-46655, r=petrochenkov
Do not expand a derive invocation when derive is not allowed

Closes #46655.

The first commit is what actually closes #46655. The second one is just a refactoring I have done while waiting on a test.
2017-12-28 06:45:31 +00:00
bors
9a8c753d5e Auto merge of #47018 - malbarbo:armv4t, r=alexcrichton
Add armv4t-unknown-linux-gnueabi target

armv4t was left out of https://github.com/rust-lang/rust/pull/37615 (armv5te addition) to be included in a [future PR](https://github.com/rust-lang/rust/pull/37615#issuecomment-259189758).  So this PR adds armv4t target.

armv4t target is useful because the [armel](https://wiki.debian.org/ArmEabiPort) port of Debian targets armv4t
2017-12-28 04:13:24 +00:00
Jeremy Soller
5919243924 Implement rename using new system call
Fix readlink and symlink to utilize O_CLOEXEC
2017-12-27 20:37:50 -07:00
Seiichi Uchida
d882691046 Prefer to use attr::contains_name() and attr::find_by_name() 2017-12-28 12:32:24 +09:00
bors
6c06bfaeba Auto merge of #47017 - topecongiro:issue-33469, r=estebank
Do not panic on interpolated token inside quote macro

Closes #33469.
2017-12-28 01:25:38 +00:00
Oliver Middleton
3d11d201d9 rustdoc: Add missing src links for generic impls on trait pages
`implementor2item` would return `None` for generic impls so instead this clones the entire `clean::Item` into the `implementors` map which simplifies some code.
2017-12-27 23:39:25 +00:00
bors
e687205fd0 Auto merge of #47016 - malbarbo:dist-armv5te, r=alexcrichton
Add dist builder for armv5te-unknown-linux-gnueabi (again)

The dist builder was first add in https://github.com/rust-lang/rust/pull/46498 and later remove in https://github.com/rust-lang/rust/pull/46498 because of https://github.com/rust-lang/rust/issues/46822.

https://github.com/rust-lang/rust/issues/46822 seems to be fixed now (I and @green-s have [tested](https://github.com/rust-lang/rust/pull/46498#issuecomment-353901216) it).
2017-12-27 22:39:00 +00:00
QuietMisdreavus
ac15a2e5a2
update char_indices example to highlight big chars 2017-12-27 16:27:57 -06:00
bors
1abeb436d5 Auto merge of #47014 - topecongiro:fixed-ices, r=estebank
Add tests to fixed ICEs

Closes #27078. Closes #27985. Closes #39848. Closes #42164.
Closes #42479. Closes #45662. Closes #45965. Closes #46152.
2017-12-27 19:52:26 +00:00
Ed Schouten
838fb4a6a0 Disable printing of error message on file descriptor 2 on CloudABI.
As CloudABI is a capability-based runtime environment, file descriptors
are the mechanism that grants rights to a process. These file
descriptors may be passed into processes on startup using a utility
called cloudabi-run. Unlike the POSIX shell, cloudabi-run does not
follow the UNIX model where file descriptors 0, 1 and 2 represent stdin,
stdout and stderr. There can be arbitrary many (or few) file descriptors
that can be provided. For this reason, CloudABI's C library also doesn't
define STD*_FILENO. liblibc should also not declare these.

Disable the code in liballoc_system that tries to print error messages
over file descriptor 2. For now, let's keep this function quiet. We'll
see if we can think of some other way to log this in the future.
2017-12-27 18:38:57 +01:00
BurntPizza
766465f0e5 Make normalize_and_test_predicates into a query 2017-12-27 12:32:44 -05:00
QuietMisdreavus
dfbb946649 bootstrap: pass --deny-render-differences to rustdoc 2017-12-27 10:09:23 -06:00
QuietMisdreavus
e766f60c44 rustdoc: add option to abort process on markdown differences 2017-12-27 10:09:22 -06:00
topecongiro
d1b287cf32 Report an error when resolving non-ident macro path failed 2017-12-28 00:46:27 +09:00
bors
bfbb1f5ce1 Auto merge of #46479 - bkchr:termination_trait, r=arielb1
Implements RFC 1937: `?` in `main`

This is the first part of the RFC 1937 that supports new
`Termination` trait in the rust `main` function.

Thanks @nikomatsakis, @arielb1 and all other people in the gitter channel for all your help!

The support for doctest and `#[test]` is still missing, bu as @nikomatsakis said, smaller pull requests are better :)
2017-12-27 15:41:51 +00:00
Eh2406
2c69473222 CStore switch FxHashMap to IndexVec 2017-12-27 10:36:52 -05:00
Oliver Middleton
a8d107be25 Correct a few stability attributes 2017-12-27 14:11:05 +00:00
bors
63efff5a71 Auto merge of #47009 - eddyb:issue-46855, r=arielb1
rustc_trans: support ZST indexing involving uninhabited types.

Fixes #46855 in a minimal way. I decided against supporting non-memory `Rvalue::Len` in this PR (see https://github.com/rust-lang/rust/issues/46855#issuecomment-352965807), as `PlaceContext::Inspect` is also used for `Rvalue::Discriminant`.

r? @arielb1
2017-12-27 12:54:25 +00:00
bors
71ed31f240 Auto merge of #47007 - eddyb:issue-46897, r=arielb1
rustc: don't use union layouts for tagged union enums.

Fixes #46897, fixes #43517 (AFAICT from the testcases).
This PR doesn't add any testcases, we should try to at least get perf ones (cc @Mark-Simulacrum).
I couldn't find an example in those issues where the choice of LLVM array vs struct (with N identical fields) for padding filler types is still needed, *on top of* this change, to prevent excessive LLVM sinking.

r? @arielb1
2017-12-27 10:19:43 +00:00
bors
3fd27b2718 Auto merge of #46977 - est31:column_fix, r=dtolnay
Make the output of the column! macro 1 based

Fixes  #46868.

I didn't add any regression tests as the change already had to change tests inside the codebase.

r? @dtolnay
2017-12-27 07:11:50 +00:00
bors
e8098c5c4d Auto merge of #46803 - estebank:non-ascii-def-span, r=petrochenkov
Use def span for non-ascii ident feature gate error
2017-12-27 04:23:10 +00:00
Bastian Köcher
09f94bea4a Revert "New generated main returns void"
This reverts commit 267800a7c0.
2017-12-27 01:23:28 +01:00
Marco A L Barbosa
36d486a894 Update compiler_builtins 2017-12-26 22:22:21 -02:00
Bastian Köcher
5a4298b6d3 Don't use process::exit as it is an unreachable on wasm32 2017-12-26 23:53:51 +01:00
Ed Schouten
304a7b7985 Link against -lunwind on CloudABI.
CloudABI makes use of LLVM's libunwind to do stack unwinding. It is
installed under the name libunwind.a.
2017-12-26 23:32:42 +01:00
Alex Crichton
2cdd1c4df3 rustc: Switch start_fn to hidden visibility
This'll avoid exporting a symbol from binaries unnecessarily and should help the
linker clean things up if it can.
2017-12-26 14:26:03 -08:00
bors
cddc4a62d8 Auto merge of #46975 - matthewjasper:mir-moveck-asm, r=arielb1
[MIR Borrowck] Moveck inline asm statements

Closes #45695

New behavior:
* Input operands to `asm!` are moved, direct output operands are initialized.
* Direct, non-read-write outputs match the assignment changes in #46752 (Shallow writes, end borrows).
2017-12-26 20:47:31 +00:00
Eduard-Mihai Burtescu
97228f5e7b rustc: don't use union layouts for tagged union enums. 2017-12-26 22:36:20 +02:00
Eduard-Mihai Burtescu
57bb8ab832 rustc_trans: support ZST indexing involving uninhabited types. 2017-12-26 22:35:53 +02:00
Josh Holmer
8d49d113e5 Pass correct span when lowering grouped imports
Solves incorrect diagnostics for unused or deprecated imports. Closes #46576.

Deprecated imports had an existing test which asserted the incorrect span.
That test has been corrected as part of this commit.
2017-12-26 14:19:49 -05:00
bors
503153e950 Auto merge of #46554 - kennytm:45861-step-4-5-6-7-upload-test-result-and-remove-toolstate-toml, r=alexcrichton
[auto-toolstate] Upload the toolstate result to an external git repository, and removes BuildExpectation

This PR consists of 3 commits.

1. (Steps 4–6) The `toolstate.json` output previously collected is now pushed to the https://github.com/rust-lang-nursery/rust-toolstate repository.
2. (Step 7) Revert commit ab018c7, thus removing all traces of `BuildExpectation` and `toolstate.toml`.
3. (Step 8) Adjust CONTRIBUTION.md for the new procedure.

These are the last steps of #45861. After this PR, the toolstate will be automatically computed and published to https://rust-lang-nursery.github.io/rust-toolstate/. There is no need to manage toolstate.toml again.

Closes #45861.
2017-12-26 18:03:00 +00:00