]> git.lizzy.rs Git - rust.git/log
rust.git
6 years agorustbuild: fix dist in debug mode
Marc-Antoine Perennou [Wed, 18 Oct 2017 19:55:12 +0000 (21:55 +0200)]
rustbuild: fix dist in debug mode

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
6 years agoAuto merge of #45368 - kennytm:rollup, r=kennytm
bors [Wed, 18 Oct 2017 18:07:22 +0000 (18:07 +0000)]
Auto merge of #45368 - kennytm:rollup, r=kennytm

Rollup of 10 pull requests

- Successful merges: #44138, #45082, #45098, #45181, #45217, #45281, #45325, #45326, #45340, #45354
- Failed merges:

6 years agoRollup merge of #45354 - cuviper:unit_doc, r=QuietMisdreavus
kennytm [Wed, 18 Oct 2017 17:59:54 +0000 (01:59 +0800)]
Rollup merge of #45354 - cuviper:unit_doc, r=QuietMisdreavus

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.

6 years agoRollup merge of #45340 - stjepang:localkey-state-doc-skip-uninitialized, r=alexcrichton
kennytm [Wed, 18 Oct 2017 17:59:53 +0000 (01:59 +0800)]
Rollup merge of #45340 - stjepang:localkey-state-doc-skip-uninitialized, r=alexcrichton

Docs: a LocalKey might start in the Valid state

Add a comment to the docs for `LocalKey::state` explaining that some keys might skip the `Uninitialized` state and start in the `Valid` state.

cc #27716

r? @alexcrichton

6 years agoRollup merge of #45326 - cuviper:min-llvm-3.9, r=alexcrichton
kennytm [Wed, 18 Oct 2017 17:59:52 +0000 (01:59 +0800)]
Rollup merge of #45326 - cuviper:min-llvm-3.9, r=alexcrichton

Bump the minimum LLVM to 3.9

Old LLVM bugs are reportedly cropping up harder, but 3.9 seems to be OK.

Fixes #45277.

6 years agoRollup merge of #45325 - spastorino:first_statement_index_with_macro, r=nikomatsakis
kennytm [Wed, 18 Oct 2017 17:59:51 +0000 (01:59 +0800)]
Rollup merge of #45325 - spastorino:first_statement_index_with_macro, r=nikomatsakis

Generate FirstStatementIndex using newtype_index macro

6 years agoRollup merge of #45281 - GuillaumeGomez:tab-selection, r=QuietMisdreavus
kennytm [Wed, 18 Oct 2017 17:59:50 +0000 (01:59 +0800)]
Rollup merge of #45281 - GuillaumeGomez:tab-selection, r=QuietMisdreavus

Save selected search tab

Fixes #45278.

r? @rust-lang/docs

6 years agoRollup merge of #45217 - SimonSapin:alloc-doc, r=steveklabnik
kennytm [Wed, 18 Oct 2017 17:59:49 +0000 (01:59 +0800)]
Rollup merge of #45217 - SimonSapin:alloc-doc, r=steveklabnik

Fix out of date unstable book entries for `alloc_*` features.

The `alloc_jemalloc` crate does not provide a type to use with `#[global_allocator]`, and (according to Alex) `extern crate alloc_jemalloc;` alone became a no-op when `#[global_allocator]` was introduced.

6 years agoRollup merge of #45181 - Havvy:doc-unstable-lang-items, r=frewsxcv
kennytm [Wed, 18 Oct 2017 17:59:48 +0000 (01:59 +0800)]
Rollup merge of #45181 - Havvy:doc-unstable-lang-items, r=frewsxcv

List of all lang items in unstable book.

I don't know how to link to the source code correctly, so I just put the information aside the lang item name.

6 years agoRollup merge of #45098 - sunjay:breakingrustfmtrls, r=alexcrichton
kennytm [Wed, 18 Oct 2017 17:59:47 +0000 (01:59 +0800)]
Rollup merge of #45098 - sunjay:breakingrustfmtrls, r=alexcrichton

Documenting the process for when rustfmt/rls break

**DO NOT MERGE YET**

I'm documenting what to do when rustfmt or rls break because of your changes. I'm currently going through this and will keep adding more as I figure out what all the steps are. This first commit is based on @alexcrichton's [comment on my original PR](https://github.com/rust-lang/rust/pull/44766#issuecomment-332653525).

[Rendered](https://github.com/sunjay/rust/blob/breakingrustfmtrls/CONTRIBUTING.md#breaking-tools-built-with-the-compiler)

Reviews are welcome, but as I mentioned, I will be revising this as I go.

6 years agoRollup merge of #45082 - jacwah:explain-E0382, r=steveklabnik
kennytm [Wed, 18 Oct 2017 17:59:46 +0000 (01:59 +0800)]
Rollup merge of #45082 - jacwah:explain-E0382, r=steveklabnik

Mention Clone and refs in --explain E0382

I followed the discussion in #42446 and came up with these additions.

- Mention references before going into traits. They're probably more likely solutions.
- Mention `Clone` before `Copy`. Cloning has wider applicability and `#derive[Copy, Clone]` makes more sense after learning about `Clone`.

The language is not great, any suggestions there would be appreciated :sparkles:

6 years agoRollup merge of #44138 - steveklabnik:rustdoc-deprecations, r=QuietMisdreavus
kennytm [Wed, 18 Oct 2017 17:59:44 +0000 (01:59 +0800)]
Rollup merge of #44138 - steveklabnik:rustdoc-deprecations, r=QuietMisdreavus

Deprecate several flags in rustdoc

Part of #44136

cc @rust-lang/dev-tools @rust-lang/docs

This is a very basic PR to start deprecating some flags; `rustdoc` doesn't really have fancy output options like `rustc` does, so I went with `eprintln!`. Happy to change it if people feel that's not appropriate.

Also, I have no idea if we can or should write tests here, so I didn't try. If someone feels strongly about it, then let's do it, but given that the only outcome here is a side effect...

6 years agoRemove two obsolete min-llvm-version tests
Josh Stone [Wed, 18 Oct 2017 14:54:35 +0000 (07:54 -0700)]
Remove two obsolete min-llvm-version tests

6 years agoAuto merge of #44573 - dotdash:dbg_bloat, r=arielb1
bors [Wed, 18 Oct 2017 13:36:17 +0000 (13:36 +0000)]
Auto merge of #44573 - dotdash:dbg_bloat, r=arielb1

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.

6 years agoAvoid unnecessary allocas for indirect function arguments
Björn Steinbrink [Thu, 14 Sep 2017 20:09:09 +0000 (22:09 +0200)]
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.

6 years agoAuto merge of #44501 - nikomatsakis:issue-44137-non-query-data-in-tcx, r=eddyb
bors [Wed, 18 Oct 2017 10:44:08 +0000 (10:44 +0000)]
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

6 years agorustdoc: add a primitive page for "unit"
Josh Stone [Wed, 18 Oct 2017 06:03:50 +0000 (23:03 -0700)]
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.

6 years agoUpdating the instructions for when a tool breaks to use the new toolstate feature
Sunjay Varma [Wed, 18 Oct 2017 02:51:10 +0000 (22:51 -0400)]
Updating the instructions for when a tool breaks to use the new toolstate feature

6 years agoAdded a section about updating submodules
Sunjay Varma [Tue, 10 Oct 2017 20:31:43 +0000 (16:31 -0400)]
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.

6 years agoDocumenting the process for when rustfmt/rls breakk because of your changes
Sunjay Varma [Sun, 8 Oct 2017 01:53:43 +0000 (21:53 -0400)]
Documenting the process for when rustfmt/rls breakk because of your changes

6 years agomodify tests to use new flag
steveklabnik [Tue, 17 Oct 2017 17:54:46 +0000 (13:54 -0400)]
modify tests to use new flag

6 years agobreak clippy
Niko Matsakis [Mon, 16 Oct 2017 21:36:59 +0000 (17:36 -0400)]
break clippy

6 years agomake `erase_regions` use a query instead of an ad-hoc cache
Niko Matsakis [Tue, 17 Oct 2017 15:24:46 +0000 (11:24 -0400)]
make `erase_regions` use a query instead of an ad-hoc cache

6 years agoGenerate FirstStatementIndex using newtype_index macro
Santiago Pastorino [Mon, 16 Oct 2017 13:45:23 +0000 (10:45 -0300)]
Generate FirstStatementIndex using newtype_index macro

6 years agoAuto merge of #45344 - kennytm:rollup, r=kennytm
bors [Tue, 17 Oct 2017 14:57:33 +0000 (14:57 +0000)]
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:

6 years agoCreate a new flag, --document-private-items
steveklabnik [Thu, 21 Sep 2017 18:10:07 +0000 (14:10 -0400)]
Create a new flag, --document-private-items

Fixes #44136

6 years agoDeprecate several flags in rustdoc
steveklabnik [Mon, 28 Aug 2017 23:30:45 +0000 (19:30 -0400)]
Deprecate several flags in rustdoc

Part of #44136

Upgrades cargo due to https://github.com/rust-lang/cargo/pull/4451

6 years agoList of all lang items in unstable book.
Havvy [Tue, 10 Oct 2017 18:25:09 +0000 (11:25 -0700)]
List of all lang items in unstable book.

6 years agoRollup merge of #45339 - xfix:patch-4, r=steveklabnik
kennytm [Tue, 17 Oct 2017 14:21:05 +0000 (22:21 +0800)]
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()
}
```

6 years agoRollup merge of #45338 - ishitatsuyuki:boot-jemalloc, r=aidanhs
kennytm [Tue, 17 Oct 2017 14:21:04 +0000 (22:21 +0800)]
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.

6 years agoRollup merge of #45329 - rust-lang:duplicate-word, r=QuietMisdreavus
kennytm [Tue, 17 Oct 2017 14:21:03 +0000 (22:21 +0800)]
Rollup merge of #45329 - rust-lang:duplicate-word, r=QuietMisdreavus

Remove duplicated word

r? @rust-lang/docs

6 years agoRollup merge of #45321 - alexcrichton:xcodeup, r=aidanhs
kennytm [Tue, 17 Oct 2017 14:21:02 +0000 (22:21 +0800)]
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

6 years agoRollup merge of #45315 - zackmdavis:expected_statement_after_outer_attr_after_inner_a...
kennytm [Tue, 17 Oct 2017 14:21:01 +0000 (22:21 +0800)]
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.

6 years agoRollup merge of #45310 - gnzlbg:fix_aarch64, r=pnkfelix
kennytm [Tue, 17 Oct 2017 14:21:00 +0000 (22:21 +0800)]
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.

6 years agoRollup merge of #45308 - dbrgn:headlines, r=steveklabnik
kennytm [Tue, 17 Oct 2017 14:20:59 +0000 (22:20 +0800)]
Rollup merge of #45308 - dbrgn:headlines, r=steveklabnik

Rustdoc book: Add missing headlines

Some options were missing headlines, which looked a bit inconsistent.

6 years agoRollup merge of #45307 - dbrgn:fix-typo, r=QuietMisdreavus
kennytm [Tue, 17 Oct 2017 14:20:58 +0000 (22:20 +0800)]
Rollup merge of #45307 - dbrgn:fix-typo, r=QuietMisdreavus

Fix typo in rustdoc book

There was a tyop :P

6 years agoRollup merge of #45151 - Pirh:stdio_default_docs, r=frewsxcv
kennytm [Tue, 17 Oct 2017 14:20:57 +0000 (22:20 +0800)]
Rollup merge of #45151 - Pirh:stdio_default_docs, r=frewsxcv

Document defaults for stdin, stdout, and stderr methods of Command

For #29370

6 years agoRollup merge of #45097 - nivkner:fixme_fixup2, r=estebank
kennytm [Tue, 17 Oct 2017 14:20:55 +0000 (22:20 +0800)]
Rollup merge of #45097 - nivkner:fixme_fixup2, r=estebank

address more FIXME whose associated issues were marked as closed

part of #44366

6 years agoAuto merge of #45290 - GuillaumeGomez:fix-help, r=QuietMisdreavus
bors [Tue, 17 Oct 2017 12:18:25 +0000 (12:18 +0000)]
Auto merge of #45290 - GuillaumeGomez:fix-help, r=QuietMisdreavus

Hide help when search bar is focused

Fixes #45286

r? @rust-lang/docs

6 years agoDocs: a LocalKey might start in the Valid state
Stjepan Glavina [Tue, 17 Oct 2017 09:02:25 +0000 (11:02 +0200)]
Docs: a LocalKey might start in the Valid state

6 years agoAuto merge of #45311 - goffrie:issue-40003, r=alexcrichton
bors [Tue, 17 Oct 2017 09:00:11 +0000 (09:00 +0000)]
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.

6 years agoUpdate array documentation for Clone trait changes
Konrad Borowski [Tue, 17 Oct 2017 06:29:29 +0000 (08:29 +0200)]
Update array documentation for Clone trait changes

6 years agobootstrap: Avoid fetching jemalloc if it's disabled
Tatsuyuki Ishi [Tue, 17 Oct 2017 06:01:49 +0000 (15:01 +0900)]
bootstrap: Avoid fetching jemalloc if it's disabled

Fix #45300

6 years agoAuto merge of #45179 - cuviper:result-intoiter-clone, r=BurntSushi
bors [Tue, 17 Oct 2017 03:11:52 +0000 (03:11 +0000)]
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`.

6 years agoAuto merge of #45138 - johnthagen:future_imports, r=nikomatsakis
bors [Tue, 17 Oct 2017 00:34:32 +0000 (00:34 +0000)]
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).

6 years agoRemove duplicated word
Guillaume Gomez [Mon, 16 Oct 2017 22:19:25 +0000 (00:19 +0200)]
Remove duplicated word

6 years agoMerge branch 'master' into future_imports
johnthagen [Mon, 16 Oct 2017 21:56:12 +0000 (17:56 -0400)]
Merge branch 'master' into future_imports

6 years agobump up the recursion limit
Niko Matsakis [Fri, 13 Oct 2017 20:07:47 +0000 (16:07 -0400)]
bump up the recursion limit

6 years agofix nits
Niko Matsakis [Fri, 22 Sep 2017 08:35:25 +0000 (04:35 -0400)]
fix nits

6 years agoadd some tips to CONTRIBUTING.md to help with debugging this problem
Niko Matsakis [Thu, 21 Sep 2017 17:46:52 +0000 (13:46 -0400)]
add some tips to CONTRIBUTING.md to help with debugging this problem

6 years agoadd a function for testing if a ty is uninhabited from all modules
Niko Matsakis [Thu, 21 Sep 2017 17:46:38 +0000 (13:46 -0400)]
add a function for testing if a ty is uninhabited from all modules

Desired by miri.

6 years agoconvert constant promotion into a query
Niko Matsakis [Mon, 11 Sep 2017 17:09:14 +0000 (13:09 -0400)]
convert constant promotion into a query

6 years agoinvoke const only on body-ids
Niko Matsakis [Fri, 8 Sep 2017 16:14:38 +0000 (12:14 -0400)]
invoke const only on body-ids

6 years agorestructure the public inhabitedness APIs and remove the cache
Niko Matsakis [Fri, 8 Sep 2017 13:58:53 +0000 (09:58 -0400)]
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.

6 years agoAuto merge of #44857 - toidiu:ak-44493-empty-predicate, r=nikomatsakis
bors [Mon, 16 Oct 2017 21:29:54 +0000 (21:29 +0000)]
Auto merge of #44857 - toidiu:ak-44493-empty-predicate, r=nikomatsakis

#44493 add structure for inferred_outlives_of

#44493

- add placeholder for the final implementation of inferred_outlives_of
- add some placeholder tests

6 years agobootstrap: update and enable the LLVM version-check
Josh Stone [Mon, 16 Oct 2017 19:57:37 +0000 (12:57 -0700)]
bootstrap: update and enable the LLVM version-check

While the `config.toml.example` comments say "we automatically check the
version by default," we actually didn't.  That check was badly out of
date, only allowing 3.5, 3.6, or 3.7.  This it now updated to the new
3.9 minimum requirement, and truly enabled by default.

6 years agoUpdate the codegen/mainsubprogram tests to min-llvm 4.0
Josh Stone [Mon, 16 Oct 2017 19:48:01 +0000 (12:48 -0700)]
Update the codegen/mainsubprogram tests to min-llvm 4.0

The necessary changes were only in upstream LLVM in 4.0, but they were
for a while backported to Rust LLVM.  Now that Rust LLVM is also 4.0, we
can make the test conditional here more accurate.

6 years agoBump the minimum LLVM to 3.9
Josh Stone [Mon, 16 Oct 2017 19:45:24 +0000 (12:45 -0700)]
Bump the minimum LLVM to 3.9

Old LLVM bugs are reportedly cropping up harder, but 3.9 seems to be OK.

Fixes #45277.

6 years agorevert change to function_sections for windows
Niv Kaminer [Mon, 16 Oct 2017 19:53:25 +0000 (22:53 +0300)]
revert change to function_sections for windows

6 years agoAuto merge of #45243 - alexcrichton:tool-rls-rustfmt, r=Mark-Simulacrum
bors [Mon, 16 Oct 2017 18:52:16 +0000 (18:52 +0000)]
Auto merge of #45243 - alexcrichton:tool-rls-rustfmt, r=Mark-Simulacrum

 rustbuild: Allow setting rls/rustfmt to "broken"

This commit enables configuring the RLS/rustfmt tools to the "broken" state and
actually get it past CI. The main changes here were to update all dist-related
code to handle the situation where the RLS isn't available. This in turn
involved a homegrown preprocessor-like-function to edit the configuration files
we pass to the various combined installer tools.

6 years agofix function name
toidiu [Wed, 11 Oct 2017 14:18:57 +0000 (10:18 -0400)]
fix function name

6 years agoadd a new dep node for outlives
toidiu [Wed, 11 Oct 2017 02:54:59 +0000 (22:54 -0400)]
add a new dep node for outlives

6 years agoadd error to the correct line in unit test
toidiu [Sun, 8 Oct 2017 18:45:19 +0000 (14:45 -0400)]
add error to the correct line in unit test

6 years agoadd a test case
toidiu [Thu, 28 Sep 2017 01:20:44 +0000 (21:20 -0400)]
add a test case

dont duplicate error codes

choose unlikely error code

specify error pattern in test

6 years agoadded components for testing. added outlives test to the check_crate function of...
toidiu [Thu, 28 Sep 2017 01:01:48 +0000 (21:01 -0400)]
added components for testing. added outlives test to the check_crate function of librustc_typeck

6 years agocreate a seperate module for outlives. added a query for inferred_outlives. setup...
toidiu [Thu, 28 Sep 2017 00:18:41 +0000 (20:18 -0400)]
create a seperate module for outlives. added a query for inferred_outlives. setup some files for upcoming tests

6 years agoadd inferred_outlives_of query
toidiu [Tue, 26 Sep 2017 04:48:32 +0000 (00:48 -0400)]
add inferred_outlives_of query

6 years agoreturn an empty inferred_outlives_of
toidiu [Tue, 26 Sep 2017 04:36:38 +0000 (00:36 -0400)]
return an empty inferred_outlives_of

6 years agorustbuild: Allow setting rls/rustfmt to "broken"
Alex Crichton [Tue, 19 Sep 2017 20:04:17 +0000 (13:04 -0700)]
rustbuild: Allow setting rls/rustfmt to "broken"

This commit enables configuring the RLS/rustfmt tools to the "broken" state and
actually get it past CI. The main changes here were to update all dist-related
code to handle the situation where the RLS isn't available. This in turn
involved a homegrown preprocessor-like-function to edit the configuration files
we pass to the various combined installer tools.

6 years agoAuto merge of #45202 - alexcrichton:fix-inline-always, r=michaelwoerister
bors [Mon, 16 Oct 2017 16:02:43 +0000 (16:02 +0000)]
Auto merge of #45202 - alexcrichton:fix-inline-always, r=michaelwoerister

rustc: Handle #[inline(always)] at -O0

This commit updates the handling of `#[inline(always)]` functions at -O0 to
ensure that it's always inlined regardless of the number of codegen units used.

Closes #45201

6 years agoci: Update Travis OSX builders
Alex Crichton [Mon, 16 Oct 2017 15:25:58 +0000 (08:25 -0700)]
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

6 years agoturn link to RFC 1751 into a markdown link
Niv Kaminer [Mon, 16 Oct 2017 14:25:33 +0000 (14:25 +0000)]
turn link to RFC 1751 into a markdown link

6 years agorefactor inhabitedness to have clearer public entry points
Niko Matsakis [Thu, 7 Sep 2017 20:39:15 +0000 (16:39 -0400)]
refactor inhabitedness to have clearer public entry points

6 years agoAuto merge of #45293 - joeratt:patch-1, r=kennytm
bors [Mon, 16 Oct 2017 11:54:31 +0000 (11:54 +0000)]
Auto merge of #45293 - joeratt:patch-1, r=kennytm

Add "Buidling on *nix" sub-header

Since there is a "Build on Windows" section, a simple sub-header here would help Windows users to know they need to keep reading.

6 years agointroduce a whitelist for aarch64
gnzlbg [Mon, 16 Oct 2017 11:33:43 +0000 (13:33 +0200)]
introduce a whitelist for aarch64

6 years agoAuto merge of #45297 - matthewjasper:associated-item-namespaces, r=petrochenkov
bors [Mon, 16 Oct 2017 06:40:04 +0000 (06:40 +0000)]
Auto merge of #45297 - matthewjasper:associated-item-namespaces, r=petrochenkov

Check namespaces when resolving associated items in typeck

Closes #35600
Closes #44247
Fixes a "cannot move a value of type..." error in the same case as #44247 but with the associated items swapped.

6 years agoAuto merge of #45283 - alexcrichton:used-mut-nodes, r=arielb1
bors [Mon, 16 Oct 2017 03:02:05 +0000 (03:02 +0000)]
Auto merge of #45283 - alexcrichton:used-mut-nodes, r=arielb1

rustc: Remove `used_mut_nodes` from `TyCtxt`

This updates the borrowck query to return a result, and this result is then used
to incrementally check for unused mutable nodes given sets of all the used
mutable nodes.

Closes #42384

6 years agodon't issue "expected statement after outer attr." after inner attr.
Zack M. Davis [Mon, 16 Oct 2017 02:02:45 +0000 (19:02 -0700)]
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.

6 years agoAuto merge of #45191 - petrochenkov:yesar, r=Mark-Simulacrum
bors [Mon, 16 Oct 2017 00:32:21 +0000 (00:32 +0000)]
Auto merge of #45191 - petrochenkov:yesar, r=Mark-Simulacrum

rustbuild: Support specifying archiver and linker explicitly

With this patch `x.py test` passes without toolchain being in `PATH` if `cc`, `cxx`, `ar`, `linker` and `gdb` are specified in `config.toml` (except for a few `run-make` tests using `nm`).

Fixes https://github.com/rust-lang/rust/issues/41821
r? @Mark-Simulacrum

6 years agoRe-enable linker override for cross-compilation
Vadim Petrochenkov [Mon, 16 Oct 2017 00:20:01 +0000 (03:20 +0300)]
Re-enable linker override for cross-compilation

6 years agoDon't use target's linker when linking build scripts
Vadim Petrochenkov [Sun, 15 Oct 2017 18:39:16 +0000 (21:39 +0300)]
Don't use target's linker when linking build scripts

6 years agoAuto merge of #45215 - alexcrichton:thin-lto-reference-more, r=michaelwoerister
bors [Sun, 15 Oct 2017 20:07:35 +0000 (20:07 +0000)]
Auto merge of #45215 - alexcrichton:thin-lto-reference-more, r=michaelwoerister

rustc: Fix some ThinLTO internalization

First the `addPreservedGUID` function forgot to take care of "alias" summaries.
I'm not 100% sure what this is but the current code now matches upstream. Next
the `computeDeadSymbols` return value wasn't actually being used, but it needed
to be used! Together these should...

Closes #45195

6 years agoAdd test for #40003.
Geoffry Song [Sun, 15 Oct 2017 19:00:22 +0000 (12:00 -0700)]
Add test for #40003.

6 years agorustbuild: Support specifying archiver and linker explicitly
Vadim Petrochenkov [Tue, 10 Oct 2017 20:06:22 +0000 (23:06 +0300)]
rustbuild: Support specifying archiver and linker explicitly

6 years agoAuto merge of #44613 - QuietMisdreavus:rustdoc-perf, r=michaelwoerister
bors [Sun, 15 Oct 2017 17:48:12 +0000 (17:48 +0000)]
Auto merge of #44613 - QuietMisdreavus:rustdoc-perf, r=michaelwoerister

some low-hanging rustdoc optimizations

There were a few discussions earlier today in #rust-internals about the syscall usage and overall performance of rustdoc. This PR is intended to pick some low-hanging fruit and try to rein in some of the performance issues of rustdoc.

6 years agoaarch64 is not whitelisted for ARM features
gnzlbg [Sun, 15 Oct 2017 17:09:25 +0000 (19:09 +0200)]
aarch64 is not whitelisted for ARM features

6 years agorustc: Fix some ThinLTO internalization
Alex Crichton [Wed, 11 Oct 2017 18:19:59 +0000 (11:19 -0700)]
rustc: Fix some ThinLTO internalization

First the `addPreservedGUID` function forgot to take care of "alias" summaries.
I'm not 100% sure what this is but the current code now matches upstream. Next
the `computeDeadSymbols` return value wasn't actually being used, but it needed
to be used! Together these should...

Closes #45195

6 years agoRustdoc book: Add missing headlines
Danilo Bargen [Sun, 15 Oct 2017 15:02:45 +0000 (17:02 +0200)]
Rustdoc book: Add missing headlines

Some options were missing headlines, which looked a bit inconsistent.

6 years agoFix typo in rustdoc book
Danilo Bargen [Sun, 15 Oct 2017 14:59:23 +0000 (16:59 +0200)]
Fix typo in rustdoc book

6 years agoAuto merge of #45228 - theotherjimmy:ensure-query, r=michaelwoerister
bors [Sun, 15 Oct 2017 14:00:39 +0000 (14:00 +0000)]
Auto merge of #45228 - theotherjimmy:ensure-query, r=michaelwoerister

incr.comp.: Introduce `ensure` and `ensure` typeck_tables_of

Resolves #45210

In this Pull Request we introduce the `ensure` query/function. `ensure` has the
semantics and type of the function `Q1` below:
```rust
fn Q1::ensure(K){
    Q(K);
}
```
Further, `ensure` avoids the need to load the result from disk (or execute the
provider, if we are not storing the results of Q to disk).

@nikomatsakis

6 years agoAuto merge of #45123 - goffrie:fix-method-unit-call, r=oli-obk
bors [Sun, 15 Oct 2017 11:31:46 +0000 (11:31 +0000)]
Auto merge of #45123 - goffrie:fix-method-unit-call, r=oli-obk

Provide the full span of method calls to `check_argument_types`

... so that it includes the span of the passed arguments, not just the name of the called method.

Fixes #44760.

6 years agoCheck namespaces when resolving associated items in typeck
matthewjasper [Sun, 15 Oct 2017 10:58:32 +0000 (11:58 +0100)]
Check namespaces when resolving associated items in typeck

6 years agoAuto merge of #45299 - kennytm:rollup, r=kennytm
bors [Sun, 15 Oct 2017 08:39:58 +0000 (08:39 +0000)]
Auto merge of #45299 - kennytm:rollup, r=kennytm

Rollup of 9 pull requests

- Successful merges: #45113, #45250, #45255, #45258, #45263, #45264, #45269, #45280, #45289
- Failed merges:

6 years agoRollup merge of #45289 - GuillaumeGomez:fix-doc-help, r=kennytm
kennytm [Sun, 15 Oct 2017 06:21:59 +0000 (14:21 +0800)]
Rollup merge of #45289 - GuillaumeGomez:fix-doc-help, r=kennytm

Fix arrow display

Before:

<img width="1440" alt="screen shot 2017-10-14 at 18 36 18" src="https://user-images.githubusercontent.com/3050060/31577437-a81510e8-b10e-11e7-8249-cf074bb0f59a.png">

After:

<img width="1440" alt="screen shot 2017-10-14 at 18 36 12" src="https://user-images.githubusercontent.com/3050060/31577436-a7fc0eea-b10e-11e7-96d7-6dc2916ef72f.png">

r? @rust-lang/docs

6 years agoRollup merge of #45280 - GuillaumeGomez:fix-mobile-search, r=kennytm
kennytm [Sun, 15 Oct 2017 06:21:58 +0000 (14:21 +0800)]
Rollup merge of #45280 - GuillaumeGomez:fix-mobile-search, r=kennytm

Remove terribly useless and problematic margin when searching on mobile

Before:

<img width="1440" alt="screen shot 2017-10-14 at 15 56 09" src="https://user-images.githubusercontent.com/3050060/31576308-54af4e48-b0f8-11e7-9e2e-375febbb87b2.png">

After:

<img width="1440" alt="screen shot 2017-10-14 at 15 55 52" src="https://user-images.githubusercontent.com/3050060/31576304-5216ae74-b0f8-11e7-88a0-f53f293f5499.png">

r? @rust-lang/docs

6 years agoRollup merge of #45269 - sfackler:connect-timeout-fix, r=alexcrichton
kennytm [Sun, 15 Oct 2017 06:21:57 +0000 (14:21 +0800)]
Rollup merge of #45269 - sfackler:connect-timeout-fix, r=alexcrichton

Fix TcpStream::connect_timeout on linux

Linux appears to set POLLOUT when a conection's refused, which is pretty
weird. Invert the check to look for an error explicitly. Also add an
explict test for this case.

Closes #45265.

r? @alexcrichton

6 years agoRollup merge of #45264 - 0xAX:fix-typo-bootstrap-readm, r=kennytm
kennytm [Sun, 15 Oct 2017 06:21:56 +0000 (14:21 +0800)]
Rollup merge of #45264 - 0xAX:fix-typo-bootstrap-readm, r=kennytm

fix typo in src/bootstrap/README.md

6 years agoRollup merge of #45263 - Manishearth:hashmap-clean, r=bluss
kennytm [Sun, 15 Oct 2017 06:21:55 +0000 (14:21 +0800)]
Rollup merge of #45263 - Manishearth:hashmap-clean, r=bluss

Do some cleanups for hashmaps

@mystor noticed some things whilst reading through the hashmap RawTable code.

Firstly, in RawTable we deal with this hash_offset value that is the offset of the list of hashes from the buffer start. This is always zero, and this isn't consistently used (which means that we would have bugs if we set it to something else). We should just remove this since it doesn't help us at all.

Secondly, the probing length tag is not copied when cloning a raw table. This is minor and basically means we do a bit more work than we need on further inserts on a cloned hashmap.

r? @Gankro

6 years agoRollup merge of #45258 - hdhoang:master, r=alexcrichton
kennytm [Sun, 15 Oct 2017 06:21:54 +0000 (14:21 +0800)]
Rollup merge of #45258 - hdhoang:master, r=alexcrichton

compiletest/runtest: format ErrorKind with Display

The strings are nouns for the most part, so we give ErrorKind::Help a
more sensible string. This reduces quote hiccups in failure output.

unexpected "error": '...'

unexpected error: '...'

6 years agoRollup merge of #45255 - bgermann:master, r=alexcrichton
kennytm [Sun, 15 Oct 2017 06:21:53 +0000 (14:21 +0800)]
Rollup merge of #45255 - bgermann:master, r=alexcrichton

Make Solaris builder compatible with Solaris 10

Would it be possible to get this in the next 1.22.0 beta?