Commit graph

68828 commits

Author SHA1 Message Date
Ariel Ben-Yehuda
0caba178df run EndRegion when unwinding otherwise-empty scopes
Improves #44832

borrowck-overloaded-index-move-index.rs - fixed
borrowck-multiple-captures.rs - still ICE
borrowck-issue-2657-1.rs - fixed
borrowck-loan-blocks-move.rs - fixed
borrowck-move-from-subpath-of-borrowed-path.rs - fixed
borrowck-mut-borrow-linear-errors.rs - still ICE
borrowck-no-cycle-in-exchange-heap.rs - fixed
borrowck-unary-move.rs - fixed
borrowck-loan-blocks-move-cc.rs - fixed
borrowck-vec-pattern-element-loan.rs - still broken
2017-10-18 14:11:06 +03:00
Björn Steinbrink
6bfecd41cc Avoid unnecessary allocas for indirect function arguments
The extra alloca was only necessary because it made LLVM implicitly
handle the necessary deref to get to the actual value. The same happens
for indirect arguments that have the byval attribute. But the Rust ABI
does not use the byval attribute and so we need to manually add the
deref operation to the debuginfo.
2017-10-18 12:58:15 +02:00
bors
7a4f39453c Auto merge of #44501 - nikomatsakis:issue-44137-non-query-data-in-tcx, r=eddyb
remove or encapsulate the remaining non-query data in tcx

I wound up removing the existing cache around inhabitedness since it didn't seem to be adding much value. I reworked const rvalue promotion, but not that much (i.e., I did not split the computation into bits, as @eddyb had tossed out as a suggestion). But it's now demand driven, at least.

cc @michaelwoerister -- see the `forbid_reads` change in last commit

r? @eddyb -- since the trickiest of this PR is the work on const rvalue promotion

cc #44137
2017-10-18 10:44:08 +00:00
Josh Stone
9fda05c0bc rustdoc: add a primitive page for "unit"
In `src/libstd/primitive_docs.rs`, a `#[doc(primitive = "unit")]`
section has sat long neglected.  This patch teaches rustdoc to recognize
"unit", and steals its trait implementations away from the tuple page.
2017-10-17 23:03:50 -07:00
Christian Poveda
2a889eb945 added non trivial examples of closures for str::find 2017-10-17 23:51:27 -05:00
Sunjay Varma
790604adad Updating the instructions for when a tool breaks to use the new toolstate feature 2017-10-17 23:05:45 -04:00
Sunjay Varma
3f90c3a2cf Added a section about updating submodules
The process for updating rustfmt is quite involved because of the way everything is configured. This section covers the steps for updating rustfmt and rationale behind them.
2017-10-17 23:05:45 -04:00
Sunjay Varma
bd4907d534 Documenting the process for when rustfmt/rls breakk because of your changes 2017-10-17 23:05:45 -04:00
Alex Crichton
d9ecdfe3a7 test: Update Emscripten failures/passing
All tests should now have annotation for *why* they're ignored on emscripten. A
few tests no longer need such an annotation as well!

Closes #41299
2017-10-17 18:46:38 -07:00
Christian Poveda
da7aab6e51 added examples of closures 2017-10-17 20:11:03 -05:00
steveklabnik
045ce183cc modify tests to use new flag 2017-10-17 15:38:52 -04:00
Ariel Ben-Yehuda
a6ca84a383 look past the next drop for the drop panic target
The previous code would leak data on a drop panic if the immediate next
drop was a StorageDead that was followed by another drop.
2017-10-17 21:37:18 +03:00
Niko Matsakis
7715f97279 break clippy 2017-10-17 11:24:52 -04:00
Niko Matsakis
0e67d17358 make erase_regions use a query instead of an ad-hoc cache 2017-10-17 11:24:46 -04:00
Santiago Pastorino
b8f981a149 Generate FirstStatementIndex using newtype_index macro 2017-10-17 12:06:20 -03:00
bors
f6d7514545 Auto merge of #45344 - kennytm:rollup, r=kennytm
Rollup of 10 pull requests

- Successful merges: #45097, #45151, #45307, #45308, #45310, #45315, #45321, #45329, #45338, #45339
- Failed merges:
2017-10-17 14:57:33 +00:00
steveklabnik
aad8787586 Create a new flag, --document-private-items
Fixes #44136
2017-10-17 10:54:27 -04:00
steveklabnik
4adf6aed69 Deprecate several flags in rustdoc
Part of #44136

Upgrades cargo due to https://github.com/rust-lang/cargo/pull/4451
2017-10-17 10:54:27 -04:00
bgermann
0597bdabff Remove tabs 2017-10-17 16:39:15 +02:00
Havvy
12873006f6 List of all lang items in unstable book. 2017-10-17 07:22:08 -07:00
kennytm
7f72b31165 Rollup merge of #45339 - xfix:patch-4, r=steveklabnik
Update array documentation for Clone trait changes

Just a note, for this to work, `T` doesn't have to `Copy`, `Clone` is sufficient. For instance, the following works.

```rust
fn x(a: &[String; 100]) -> [String; 100] {
    a.clone()
}
```
2017-10-17 22:21:05 +08:00
kennytm
e72c2a8299 Rollup merge of #45338 - ishitatsuyuki:boot-jemalloc, r=aidanhs
bootstrap: Avoid fetching jemalloc if it's disabled

Fix #45300

More conditions, more madness :) Tested locally.
2017-10-17 22:21:04 +08:00
kennytm
78080f11ad Rollup merge of #45329 - rust-lang:duplicate-word, r=QuietMisdreavus
Remove duplicated word

r? @rust-lang/docs
2017-10-17 22:21:03 +08:00
kennytm
b80bcadd01 Rollup merge of #45321 - alexcrichton:xcodeup, r=aidanhs
ci: Update Travis OSX builders

Looks like Travis [has announced][blog] that our current `xcode8.2` image is
being deprecated and the recommended Xcode 7 image is `xcode7.3`. This updates
us to these ahead of time to make sure we can shake out any bugs, if any.

[blog]: https://blog.travis-ci.com/2017-10-16-a-new-default-os-x-image-is-coming
2017-10-17 22:21:02 +08:00
kennytm
87729fcdba Rollup merge of #45315 - zackmdavis:expected_statement_after_outer_attr_after_inner_attr, r=petrochenkov
don't issue "expected statement after outer attr." after inner attr.

While an inner attribute here is in fact erroneous, that error ("inner
attribute is not permitted in this context") successfully gets set earlier;
this further admonition is nonsensical.

Resolves #45296.
2017-10-17 22:21:01 +08:00
kennytm
16167cbf73 Rollup merge of #45310 - gnzlbg:fix_aarch64, r=pnkfelix
aarch64 is not whitelisted for ARM features

This prevents the target feature `neon` from being enabled on aarch64.
2017-10-17 22:21:00 +08:00
kennytm
2ff1ad08ad Rollup merge of #45308 - dbrgn:headlines, r=steveklabnik
Rustdoc book: Add missing headlines

Some options were missing headlines, which looked a bit inconsistent.
2017-10-17 22:20:59 +08:00
kennytm
6b2027b500 Rollup merge of #45307 - dbrgn:fix-typo, r=QuietMisdreavus
Fix typo in rustdoc book

There was a tyop :P
2017-10-17 22:20:58 +08:00
kennytm
18f289559e Rollup merge of #45151 - Pirh:stdio_default_docs, r=frewsxcv
Document defaults for stdin, stdout, and stderr methods of Command

For #29370
2017-10-17 22:20:57 +08:00
kennytm
40d61f5982 Rollup merge of #45097 - nivkner:fixme_fixup2, r=estebank
address more FIXME whose associated issues were marked as closed

part of #44366
2017-10-17 22:20:55 +08:00
bgermann
b3ea6e5fc5 Make Solaris builder compatible with Solaris 10 retry
Unfortunately, #45255 does not quite cut it,
so use a different approach to have Solaris 10 compatibility
by tricking libbacktrace's autoconf tests.
The sysroot download routine is slightly changed, too.
2017-10-17 15:53:18 +02:00
Ariel Ben-Yehuda
a151d37401 fix generator drop caching
Fixes #45328.
2017-10-17 15:20:22 +03:00
bors
0be6863a15 Auto merge of #45290 - GuillaumeGomez:fix-help, r=QuietMisdreavus
Hide help when search bar is focused

Fixes #45286

r? @rust-lang/docs
2017-10-17 12:18:25 +00:00
Stjepan Glavina
a50fe312dc Docs: a LocalKey might start in the Valid state 2017-10-17 11:02:25 +02:00
bors
611f375a86 Auto merge of #45311 - goffrie:issue-40003, r=alexcrichton
Add the test for #40003.

I checked that the test failed to compile on an older nightly (I tried 2017-09-29) and that it compiles against master.

Closes #40003.
2017-10-17 09:00:11 +00:00
Konrad Borowski
8528508aa0 Update array documentation for Clone trait changes 2017-10-17 08:29:29 +02:00
Tatsuyuki Ishi
cbe41168e0 bootstrap: Avoid fetching jemalloc if it's disabled
Fix #45300
2017-10-17 15:01:49 +09:00
Alex Crichton
56f5a19e45 Update ThinLTO for LLVM 5 2017-10-17 14:33:36 +09:00
bors
db80da1c1a Auto merge of #45179 - cuviper:result-intoiter-clone, r=BurntSushi
core: derive Clone for result::IntoIter

It appears to be a simple oversight that `result::IntoIter<T>` doesn't
implement `Clone` (where `T: Clone`).  We do already have `Clone` for
`result::Iter`, as well as the similar `option::IntoIter` and `Iter`.
2017-10-17 03:11:52 +00:00
bors
90691c8c1f Auto merge of #45138 - johnthagen:future_imports, r=nikomatsakis
Add more __future__ imports to increase compatibility with Python 3 in bootstrap

The functionality of the  `__future__` imports are described [here](https://docs.python.org/3/library/__future__.html).

 These will help ensure the bootstrap code stays compatible with Python 3. If changes are made in the future that use absolute imports, division, or the `print` function, this will be ensure that running it under Python 2 will pass or fail the same way as Python 3.

`Option` is made a [new-style class](https://docs.python.org/2/reference/datamodel.html#new-style-and-classic-classes), so that it behaves the same way in Python 2 and 3.

The `__future__ unicode_literals` import is not used, because that can change the semantics of the code in Python 2 in unwanted ways. For more information see [this article](http://python-future.org/unicode_literals.html).
2017-10-17 00:34:32 +00:00
Jimmy Brisson
229bee3c38 Rename read_node_index to try_mark_green_and_read in plumbing
This should limit the availability of `try_mark_green_and_read` making
it harder to abuse.
2017-10-16 17:25:04 -05:00
Guillaume Gomez
cefaaf21ee Remove duplicated word 2017-10-17 00:19:25 +02:00
johnthagen
bd8497884c Merge branch 'master' into future_imports 2017-10-16 17:56:12 -04:00
Niko Matsakis
0ae18a18b4 bump up the recursion limit 2017-10-16 17:32:23 -04:00
Niko Matsakis
165cbce1cc fix nits 2017-10-16 17:32:23 -04:00
Niko Matsakis
09caa12a51 add some tips to CONTRIBUTING.md to help with debugging this problem 2017-10-16 17:32:22 -04:00
Niko Matsakis
47449ea513 add a function for testing if a ty is uninhabited from all modules
Desired by miri.
2017-10-16 17:32:22 -04:00
Niko Matsakis
0f568e2f34 convert constant promotion into a query 2017-10-16 17:32:22 -04:00
Niko Matsakis
807e157b4c invoke const only on body-ids 2017-10-16 17:32:22 -04:00
Niko Matsakis
5c26509405 restructure the public inhabitedness APIs and remove the cache
The cache was broken anyhow and this computation doesn't look that
expensive. These public accessors could potentially become queries,
but we'd have to add some more complex logic around lift. I'd prefer
to have some test cases to profile with before doing that.

Fixes #44402.
2017-10-16 17:32:21 -04:00