Commit Graph

64499 Commits

Author SHA1 Message Date
Tobias Schottdorf
e5e664fb07 Upgrade ProjectionTy's Name to a DefId
Part of #42171, in preparation for downgrading the contained `TraitRef` to
only its `substs`.
2017-05-31 12:35:13 -04:00
bors
fd7b44b78e Auto merge of #42318 - GuillaumeGomez:rustdoc-fix-signature, r=QuietMisdreavus
Fix signature by adding parens when needed

Fixes #42299.
2017-05-31 08:48:16 +00:00
Guillaume Gomez
171d285756 Fix signature by adding parens when needed 2017-05-30 23:04:03 +02:00
bors
f89d8d1844 Auto merge of #42311 - bjorn3:patch-1, r=frewsxcv
Syntax highlight all rust code in librustc/traits/README.md

Also replace `...` with `/*...*/`
2017-05-30 12:38:57 +00:00
bjorn3
681d97f19c Syntax highlight all rust code in librustc/traits/README.md
Also replace `...` with `/*...*/`
2017-05-30 14:37:19 +02:00
bors
e1fe1a8933 Auto merge of #42283 - Mark-Simulacrum:issue-40341, r=pnkfelix
Add note regarding parent module containing use statement.

Fixes #40341.
2017-05-30 05:01:10 +00:00
bors
77d096a2bb Auto merge of #42282 - Mark-Simulacrum:issue-40342, r=arielb1
Don't warn on lifetime generic no_mangle functions.

Fixes #40342.
2017-05-30 02:38:18 +00:00
bors
0c4fb24a07 Auto merge of #42180 - GuillaumeGomez:update-rustdoc-man, r=QuietMisdreavus
Update rustdoc man page

r? @rust-lang/docs
r? @rust-lang/dev-tools
2017-05-30 00:18:23 +00:00
bors
cb7c60f2a0 Auto merge of #42264 - GuillaumeGomez:new-error-codes, r=Susurrus
New error codes

Part of #42229.
2017-05-29 21:55:57 +00:00
bors
5de00925bd Auto merge of #42214 - RalfJung:rust-src, r=alexcrichton
rust-src: include everything needed to compile libstd with jemalloc

I am not very happy about all this `Path::new`, but did not find a nice way to avoid it. Also, this shouldn't be very performance-critical.

With this patch, rust-src-1.19.0-dev.tar.gz grows from 1.4 to 3.1 MiB (new uncompressed size: 15.5 MiB). Not great, but shipping incomplete sources is also not great, and this is still much smaller than pre-#41546. Excluding the entire `src/jemalloc/test` does not work, unfortunately; there is a file in there that is needed to build libstd. (And anyway there's just 190 KiB uncompressed left in that folder.)

In principle, we could try excluding the Rust test suite directories (that would be `libcore/tests` and `libcollection/tests`). I don't know enough about how this component is used to judge whether that would cause any problems. Anyway this is just 600 KiB uncompressed.

Fixes #41952
2017-05-29 19:31:03 +00:00
bors
d78c2b483e Auto merge of #42192 - michaelwoerister:no_deptracking_map_in_queries, r=nikomatsakis
incr.comp.: Remove DepGraph::write() and its callers

After months of yak shaving, we are finally there `:)`

The existence of `DepGraph::write()` was one of the two main ways for introducing cycles into the dep-graph -- something we need to avoid in the future. The other way, re-opening nodes to add more edges, is next on the list.

r? @nikomatsakis
2017-05-29 17:10:08 +00:00
bors
03bed65514 Auto merge of #41856 - qnighy:prohibit-parenthesized-params-in-more-types, r=arielb1
Prohibit parenthesized params in more types.

Prohibit parenthesized parameters in primitive types, type parameters, `Self`, etc.

Fixes #32995.
2017-05-29 11:32:14 +00:00
Michael Woerister
c150301a5b Remove DepGraph::write() and its callers. 2017-05-29 13:16:28 +02:00
bors
be5f4fe6cc Auto merge of #42262 - Mark-Simulacrum:issue-40350, r=eddyb
Don't ICE with nested enums in missing docs lint.

Fixes #40350.
2017-05-29 09:04:08 +00:00
Guillaume Gomez
478544184e Update rustdoc man page 2017-05-29 09:43:16 +02:00
Ralf Jung
6620c4b078 rust-src: include everything needed to compile libstd with jemalloc 2017-05-28 21:55:54 -07:00
bors
911192764d Auto merge of #42246 - alexcrichton:update-cargo, r=nikomatsakis
Updated locked version of libgit2

This should include a fix for rust-lang/cargo#4091 with an updated version of
libgit2.

Closes rust-lang/cargo#4091
2017-05-29 03:37:28 +00:00
bors
920c4799be Auto merge of #42218 - venkatagiri:update_cross, r=alexchrichton
use shared scripts for init and sccache in cross image

cc #42201
cc @malbarbo
2017-05-28 22:15:10 +00:00
Mark Simulacrum
c85a8fb709 Add note regarding parent module containing use statement. 2017-05-28 13:06:53 -06:00
Alex Crichton
3146d9f3a7 Updated locked version of libgit2
This should include a fix for rust-lang/cargo#4091 with an updated version of
libgit2.

Closes rust-lang/cargo#4091
2017-05-28 10:27:42 -07:00
bors
d47cf08d57 Auto merge of #42175 - michaelwoerister:filemap-hashing-fix-1, r=nikomatsakis
incr.comp.: Track expanded spans instead of FileMaps.

This PR removes explicit tracking of FileMaps in response to #42101. The reasoning behind being able to just *not* track access to FileMaps is similar to why we don't track access to the `DefId->DefPath` map:
1. One can only get ahold of a `Span` value by accessing the HIR (for local things) or a `metadata::schema::Entry` (for things from external crates).
2. For both of these things we compute a hash that incorporates the *expanded spans*, that is, what we hash is in the (FileMap independent) format `filename:line:col`.
3. Consequently, everything that emits a span should already be tracked via its dependency to something that has the span included in its hash and changes would be detected via that hash.

One caveat here is that we have to be conservative when exporting things in metadata. A crate can be built without debuginfo and would thus by default not incorporate most spans into the metadata hashes. However, a downstream crate can make an inline copy of things in the upstream crate and span changes in the upstream crate would then go undetected, even if the downstream uses them (e.g. by emitting debuginfo for an inlined function). For this reason, we always incorporate spans into metadata hashes for now (there might be more efficient ways to handle this safely when red-green tracking is implemented).

r? @nikomatsakis
2017-05-28 16:47:17 +00:00
bors
bcf95067e4 Auto merge of #42167 - scottmcm:iter-stepby-sizehint, r=alexcrichton
Override size_hint and propagate ExactSizeIterator for iter::StepBy

Generally useful, but also a prerequisite for moving a bunch of unit tests off `Range*::step_by`.

A small non-breaking subset of https://github.com/rust-lang/rust/pull/42110 (which I closed).

Includes two small documentation changes @ivandardi requested on that PR.

r? @alexcrichton
2017-05-28 14:26:52 +00:00
Mark Simulacrum
6b84f7dd5e Don't warn on lifetime generic no_mangle functions. 2017-05-28 08:21:57 -06:00
bors
924898f88a Auto merge of #41917 - arielb1:mir-array, r=nagisa
Translate array drop glue using MIR

I was a bit lazy here and used a usize-based index instead of a pointer iteration. Do you think this is important @eddyb?

r? @eddyb
2017-05-28 12:01:02 +00:00
bors
41e74a2282 Auto merge of #42276 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
Rollup of 6 pull requests

- Successful merges: #42207, #42217, #42249, #42251, #42260, #42266
- Failed merges:
2017-05-28 09:40:47 +00:00
Ariel Ben-Yehuda
ee982d4355 fix translation of MSVC funclets that loop to their own start 2017-05-28 12:00:03 +03:00
Ariel Ben-Yehuda
6adfbaf2d3 increase macro recursion limit 2017-05-28 10:43:25 +03:00
Ariel Ben-Yehuda
162bc513fb use a pointer-based array drop loop for non-zero-sized types 2017-05-28 10:43:25 +03:00
Ariel Ben-Yehuda
6548aefdeb fix loops in unwind code in MSVC
I'm not sure how well this works, but it's worth a try.
2017-05-28 10:43:25 +03:00
Ariel Ben-Yehuda
55767702ec fix RUST_LOG ICE caused by printing a default impl's DefId 2017-05-28 10:43:25 +03:00
Ariel Ben-Yehuda
7b295eea42 add NullOp::SizeOf and BinOp::Offset 2017-05-28 10:43:24 +03:00
Ariel Ben-Yehuda
3bcd6fa571 use Eq instead of Lt in loop 2017-05-28 10:43:24 +03:00
Ariel Ben-Yehuda
68b7475dc0 move "ADT master drop flag" logic to open_drop_for_adt_contents
Fixes #41888.
2017-05-28 10:43:24 +03:00
Ariel Ben-Yehuda
c6d0b5bdd8 address review comments 2017-05-28 10:43:24 +03:00
Ariel Ben-Yehuda
24c1a07c72 refactor trans::mir::block to trans all calls through the same code 2017-05-28 10:43:24 +03:00
Ariel Ben-Yehuda
9da2aaccfe translate array drop glue using MIR
This fixes leakage on panic with arrays & slices. I am using a C-style
for-loop instead of a pointer-based loop because that would be ugly-er
to implement.
2017-05-28 10:43:24 +03:00
Mark Simulacrum
1128fabb33 Rollup merge of #42266 - rkruppe:clean-trans-api, r=arielb1
Remove unused APIs from rustc_trans

There were public re-exports of some rustc modules dating back to 2011 or so. While I was at it, some functions and modules were public but never used outside the crate. I made them private or `pub(crate)` as appropriate and in one case removed an unused function.
2017-05-27 20:54:05 -06:00
Mark Simulacrum
423b410fce Rollup merge of #42260 - stjepang:document-cmp-traits-agreement, r=alexcrichton
Docs: impls of PartialEq/PartialOrd/Ord must agree

Fixes #41270.

This PR brings two improvements to the docs:

1. Docs for `PartialEq`, `PartialOrd`, and `Ord` clarify that their implementations must agree.
2. Fixes a subtle bug in the Dijkstra example for `BinaryHeap`, where the impls are inconsistent.
Thanks @Rufflewind for spotting the bug!

r? @alexcrichton
cc @frankmcsherry
2017-05-27 20:54:04 -06:00
Mark Simulacrum
906c9bcfb9 Rollup merge of #42251 - nikomatsakis:issue-42210-regr-unsized-tail, r=eddyb
extend `struct_tail` to operate over tuples

Not 100% sure why this got exposed when it wasn't before, but this struct definitely seems wrong.

Fixes #42110

r? @eddyb
2017-05-27 20:54:03 -06:00
Mark Simulacrum
4e5812cee4 Rollup merge of #42249 - Mark-Simulacrum:issue-40244, r=eddyb
Allow variadic functions with cdecl calling convention.

Fixes #40244.
2017-05-27 20:54:02 -06:00
Mark Simulacrum
04a3b47087 Rollup merge of #42217 - venkatagiri:issue_39974, r=Mark-Simulacrum
regression test for #39974

closes #39974

r? @Mark-Simulacrum
2017-05-27 20:54:01 -06:00
Mark Simulacrum
f35ec6153b Rollup merge of #42207 - Nashenas88:remove_fragment_info, r=eddyb
Remove all instances of fragment_infos and fragment sets

Remove unused fragment structs. This was suggested by @eddyb in IRC: [botbot link](https://botbot.me/mozilla/rustc/2017-05-23/?msg=86016574&page=2).
2017-05-27 20:54:00 -06:00
bors
5d2512ec5b Auto merge of #42162 - est31:closure-to-fn-coercion, r=aturon
Stabilize non capturing closure to fn coercion

Stabilisation PR for non capturing closure to fn coercion.

closes #39817
2017-05-27 23:02:44 +00:00
bors
28fd1e519a Auto merge of #42137 - nical:doc-clone, r=BurntSushi
Update to Rc and Arc documentation to favor the Rc::clone(&ptr) syntax.

This is a followup of the discussion in https://github.com/rust-lang/rfcs/pull/1954.

The solution chosen by the core team to address the problem tackled by the [the RFC](https://github.com/rust-lang/rfcs/pull/1954) was to make the function call syntax Rc::clone(&foo) the idiomatic way to clone a reference counted pointer (over the method call syntax foo.clone()).
This change updates the documentation of Rc, Arc and their respective Weak pointers to reflect this decision and bring more exposure to the existence of the function call syntax.
2017-05-27 20:35:25 +00:00
Guillaume Gomez
2969137a72 Add invalid unary operator usage error code 2017-05-27 21:34:59 +02:00
Robin Kruppe
6fec17ee15 Remove trans-internal re-exports of rustc modules
The previous commit removed them from the public API, this rewrites the use statements to get rid of the non-standard re-exports.
2017-05-27 21:09:29 +02:00
Robin Kruppe
493cd6b6e2 Reduce API surface of rustc_trans
Mark various items and fields as private or pub(crate), and remove a function that turns out to be unused.
These are not used anywhere in-tree, but I guess it's a [breaking-change] for plugins.
2017-05-27 21:08:13 +02:00
Mark Simulacrum
918875f32d Fix ICE on inner enum in missing docs lint.
This also simplifies the lint by not storing variant depth or the struct
def stack, because we no longer need them.
2017-05-27 12:13:43 -06:00
Guillaume Gomez
998b19740c Add new error codes and update tests 2017-05-27 19:58:52 +02:00
bors
9337ad5bae Auto merge of #42103 - jorendorff:master, r=estebank
trace_macro: Show both the macro call and its expansion. #42072.

See #42072 for the initial motivation behind this.

The change is not the minimal fix, but I want this behavior almost every time I use `trace_macros`.
2017-05-27 17:38:11 +00:00