Commit Graph

62198 Commits

Author SHA1 Message Date
Ximin Luo
0a55c8e659 Support armhf abi on 64-bit ARM cpus
They report their `uname -m` as armv8l rather than aarch64.

Patch originally by Matthias Klose <doko@debian.org>
2017-03-10 08:13:21 -08:00
Vadzim Dambrouski
1c5584d106 LLVM: Update submodule to include SRet support patch for MSP430. 2017-03-10 08:10:21 -08:00
Simonas Kazlauskas
4ca9c97ace Remove ability for plugins to register a MIR pass
In recent months there have been a few different people investigating how to make a plugin that
registers a MIR-pass – one that isn’t intended to be eventually merged into rustc proper.

The interface to register MIR passes was added primarily for miri (& later was
found to make prototyping of rustc-proper MIR passes a tiny bit faster). Since miri does not use
this interface anymore it seems like a good time to remove this "feature".

For prototyping purposes a similar interface can be added by developers themselves in their custom
rustc build.
2017-03-10 08:09:29 -08:00
Jeffrey Seyfried
8c98996934 Avoid using Mark and Invocation for macro defs. 2017-03-10 08:08:32 -08:00
Jeffrey Seyfried
e839486318 Move resolve_invoc from syntax to resolve. 2017-03-10 08:08:32 -08:00
Jeffrey Seyfried
212b6c2550 Refactor out ast::ItemKind::MacroDef. 2017-03-10 08:08:32 -08:00
Jonas Bushart
db35604792 Move remove_docs_from_attrs into lowering step 2017-03-10 08:02:24 -08:00
Jonas Bushart
203d22762d Store attributes as strings
Remove the AST structure
2017-03-10 08:02:24 -08:00
Jonas Bushart
a07c9a20b7 Export attributes in save-analysis data
Some annotations like the "test" annotations might be of interest for
other projects, especially rls. Export all attributes in a new
attributes item.
2017-03-10 08:02:24 -08:00
Esteban Küber
ac2bc7c570 Point to enclosing block/fn on nested unsafe
When declaring nested unsafe blocks (`unsafe {unsafe {}}`) that trigger
the "unnecessary `unsafe` block" error, point out the enclosing `unsafe
block` or `unsafe fn` that makes it unnecessary.
2017-03-10 07:53:08 -08:00
Alex Crichton
a8cacd3d21 travis: Attempt to debug sccache failures
I can't find anything that'd cause unexpected EOF in the source, so let's try
taking a look at the error logs on failures.
2017-03-10 07:51:14 -08:00
Guillaume Gomez
ea3c82cd96 Fix associated consts display 2017-03-10 16:21:07 +01:00
Guillaume Gomez
a5a3981f1e Add missing example for Display::fmt 2017-03-10 15:00:19 +01:00
bors
f573db4f80 Auto merge of #39518 - alexcrichton:update-cargo, r=arielb1
rustbuild: Use copies instead of hard links

The original motivation for hard links was to speed up the various stages of
rustbuild, but in the end this is causing problems on Windows (#39504).

This commit tweaks the build system to use copies instead of hard links
unconditionally to ensure that the files accessed by Windows are always
disjoint.

Locally this added .3s to a noop build, so it shouldn't be too much of a
regression hopefully!

Closes #39504
2017-03-10 13:22:12 +00:00
Cengiz Can
889337da06 move related tests to type-check ui test directory 2017-03-10 11:43:34 +03:00
bors
5aaa60611c Auto merge of #39835 - brson:relnotes, r=brson
Release notes for 1.16

[Rendered](https://github.com/brson/rust/blob/relnotes/RELEASES.md)
2017-03-10 07:49:06 +00:00
James Miller
3eb26d1f2b Only run inlining if mir opts are enabled 2017-03-10 03:54:38 +02:00
James Miller
f55e92b2a7 Add dep-graph tasks where needed 2017-03-10 03:54:38 +02:00
James Miller
71d0d921c2 Initial implementation of inlining for MIR
Fairly basic implementation of inlining for MIR. Uses conservative
heuristics for inlining.
2017-03-10 03:54:26 +02:00
James Miller
540b52e145 Fix recursion depth counting in layout 2017-03-10 02:55:39 +02:00
James Miller
d708a4072a Add extra methods to IndexVec and implement TypeFoldable for it
Adds `get`/`get_mut` accessors and `drain`/`drain_enumerated` iterators
to IndexVec.

Implements TypeFoldable for IndexVec.
2017-03-10 02:55:39 +02:00
Cengiz Can
7f19f1f91b fix #40294 obligation cause.body_id is not always a NodeExpr 2017-03-10 02:52:17 +03:00
Brian Anderson
23c09eaa77 Release notes for 1.16 2017-03-09 21:35:44 +00:00
Tim Neumann
b95b5db163 update gdbr tests
gdb will now reliably detect the lanugage as rust even before any
code is run.
2017-03-09 22:12:36 +01:00
bors
ec87925325 Auto merge of #40382 - alexcrichton:split-tested-targets, r=brson
travis: Split the linux-tested-targets builder

Travis only gives us 30GB disk space and we don't currently have an option to
increase that. Each musl target generates "hello world" binaries of about 3.5MB
in size, and we're testing two targets in the same image. We have around 3k
run-pass tests and 2 musl targets which works out to around 20GB. That's
dangerously close to the limit and is causing PRs to bounce.

This PR splits up the builder in two, one for x86_64 musl and the other for
i686. Hopefully that'll keep us under the disk limit.

Closes #40359
2017-03-09 20:46:14 +00:00
Alex Crichton
f44801c5ee travis: Split the linux-tested-targets builder
Travis only gives us 30GB disk space and we don't currently have an option to
increase that. Each musl target generates "hello world" binaries of about 3.5MB
in size, and we're testing two targets in the same image. We have around 3k
run-pass tests and 2 musl targets which works out to around 20GB. That's
dangerously close to the limit and is causing PRs to bounce.

This PR splits up the builder in two, one for x86_64 musl and the other for
i686. Hopefully that'll keep us under the disk limit.

Closes #40359
2017-03-09 11:54:24 -08:00
Eduard-Mihai Burtescu
cfb41aedd3 Use subtyping on the target of unsizing coercions. 2017-03-09 21:43:45 +02:00
Guillaume Gomez
4078b25589 Clean up rustdoc css 2017-03-09 19:04:13 +01:00
Simonas Kazlauskas
84d1f6aa82 Do not bother creating StorageLive for TyNever
Keeps MIR cleaner, `StorageLive(_: !)` makes no sense anyway.
2017-03-09 17:54:00 +02:00
Alex Crichton
6f431491d0 rustc: Prefer loading crates in the sysroot
This commit is a random stab in the dark to fix the spurious failures on #39518.
The leading theory of the spurious failures on Windows is that the compiler is
loading a path in the `deps` folder, passing it to `link.exe`, and then this is
racing with Cargo itself updating those paths.

This race, however, has a few unique properties:

* It's isolated to just libstd. Most crates are never passed to the linker and
  simultaneously being worked on by Cargo. Cargo's typical execution of the
  dependency graph never hits this problem.
* The crates are already all located in the sysroot in addition to the `deps`
  folder. This means that the compiler actually has two candidates of crates to
  load, and it's just arbitrarily rejecting one.

Together this means that we shouldn't need to fix this problem "in the large"
and we can instead just fix it in this isolated situation (hopefully). To solve
this the compiler's been updated to prefer crates from the sysroot to leave
Cargo's structure to itself.

We'll see if this actually allows the PR to land...
2017-03-09 07:00:13 -08:00
Alex Crichton
3be02fc410 rustbuild: Use copies instead of hard links
The original motivation for hard links was to speed up the various stages of
rustbuild, but in the end this is causing problems on Windows (#39504).

This commit tweaks the build system to use copies instead of hard links
unconditionally to ensure that the files accessed by Windows are always
disjoint.

Locally this added .3s to a noop build, so it shouldn't be too much of a
regression hopefully!
2017-03-09 07:00:13 -08:00
Charlie Fan
8062cfb372 Implement placement-in protocol for and VecDeque 2017-03-09 22:46:20 +08:00
Robin Kruppe
58ff4f67e3 rustbuild: expose LLVM_PARALLEL_LINK_JOBS
This allows limiting the number of linker jobs to avoid swapping when
linking LLVM with debug info.
2017-03-09 15:07:42 +01:00
Jake Goulding
3e2390ff9c Restore creating the channel-rust-$channel-date.txt files 2017-03-09 08:52:11 -05:00
Jake Goulding
57c989caa1 Fix botched member variable rename 2017-03-09 08:52:11 -05:00
Tobias Bucher
13341f4c6b Reword the non-dropping of src for ptr::write{,_unaligned} 2017-03-09 13:45:52 +01:00
Tobias Bucher
da6e7c8f3a Distinguish the ways CStr::from_bytes_with_nul can fail 2017-03-09 13:31:55 +01:00
Tim Neumann
4eeede3e0f fix emscripten test detection 2017-03-09 11:43:53 +01:00
bors
3087a1f39e Auto merge of #40368 - arielb1:rollup, r=arielb1
Rollup of 20 pull requests

- Successful merges: #40154, #40222, #40226, #40237, #40254, #40258, #40265, #40268, #40279, #40283, #40292, #40293, #40296, #40316, #40321, #40325, #40326, #40327, #40333, #40335
- Failed merges:
2017-03-09 08:26:17 +00:00
bors
5c9208faf1 Auto merge of #40337 - alexcrichton:racy-dirs, r=brson
rustbuild: Assert directory creation succeeds

I've been seeing failures on the bots when building jemalloc and my assumption
is that it's because cwd isn't created. That may be possible if this
`create_dir_all` call change in this commit fails, in which case we ignore the
error.

This commit updates the location to call `create_dir_racy` which handles
concurrent invocations, as multiple build scripts may be trying to create the
`native` dir.
2017-03-09 06:06:34 +00:00
Eduard-Mihai Burtescu
74bc7fda8c Overhaul coercion to use the lazy InferOk obligations passing. 2017-03-09 05:46:33 +02:00
Clar Charr
edf5dc66c1 Box docs: no allocation is done for ZSTs. 2017-03-08 21:53:28 -05:00
bors
758f37480b Auto merge of #40371 - arielb1:bean-counter, r=alexcrichton
add some disk usage accounting

Try to figure out why we are out of free space

r? @alexcrichton
2017-03-09 00:20:25 +00:00
Ariel Ben-Yehuda
8bbbfec96f add some disk usage accounting
Try to figure out why we are out of free space
2017-03-09 00:05:36 +02:00
Tim Neumann
79a7ee8d83 fix UB in repr(packed) tests 2017-03-08 21:19:31 +01:00
Ariel Ben-Yehuda
f2886e8bda Rollup merge of #40335 - tbu-:pr_doc_str_to_somecase, r=steveklabnik
Document why `str.to_{lower,upper}case` return `String`

Fixes #39201.
2017-03-08 20:54:10 +02:00
Ariel Ben-Yehuda
aea8010098 Rollup merge of #40333 - tbu-:pr_doc_ptr_write, r=alexcrichton
Clarify handling of `src` in `ptr::write`

Fixes #39733.
2017-03-08 20:54:08 +02:00
Ariel Ben-Yehuda
e8eb05cddd Rollup merge of #40327 - GuillaumeGomez:macros-urls, r=frewsxcv
Add missing urls in some macros doc

r? @frewsxcv
2017-03-08 20:54:07 +02:00
Ariel Ben-Yehuda
5ad3f09216 Rollup merge of #40326 - crazymerlyn:fix-doc-link, r=alexcrichton
Update link to COMPILER_TESTS.md in CONTRIBUTING.md

Link to compiler test documentation was broken after the file was moved by #40086.
This updates the link to the new location of the file.
2017-03-08 20:54:06 +02:00
Ariel Ben-Yehuda
99aad021ce Rollup merge of #40325 - eddyb:pr38143, r=alexcrichton
Added remove_from to vec.rs (#38143)

Turns out that if you push to someone's PR branch and cause the PR to close, you lose delegation 😞.

@madseagames I'm really sorry about that 😭
2017-03-08 20:54:05 +02:00