Commit Graph

73993 Commits

Author SHA1 Message Date
bjorn3
2af0f0dddf Hide more stuff from rustc_trans 2018-01-19 20:27:12 +01:00
bjorn3
af0f17386f Fix rustc_driver test.rs 2018-01-19 20:27:12 +01:00
bjorn3
74c92c5562 Allow runtime switching between trans backends 2018-01-19 20:27:10 +01:00
Alex Crichton
06913a5b1d Automaticaly calculate beta prerelease numbers
This is a forward-port of:

* 9426dda83d7a928d6ced377345e14b84b0f11c21
* cbfb9858951da7aee22d82178405306fca9decb1

from the beta branch which is used to automatically calculate the beta number
based on the number of merges to the beta branch so far.
2018-01-19 08:57:01 -08:00
Pieter Penninckx
81e6840ff4 Small improvements to the documentation of VecDeque. 2018-01-19 16:51:46 +01:00
Arthur Silva
fdf444da76 Update BTreeMap recommendation
Focus on the ordering/range benefit.
2018-01-19 15:40:58 +01:00
Niko Matsakis
297595532c
s/foo/main/ 2018-01-19 08:24:06 -05:00
varkor
62703cfd26 Estimate size of InstanceDef::DropGlue more accurately
Also a little bit of clean up.
2018-01-19 11:51:48 +00:00
bors
5965b79014 Auto merge of #47503 - arielb1:check-size, r=eddyb
avoid double-unsizing arrays in bytestring match lowering

The match lowering code, when lowering matches against bytestrings,
works by coercing both the scrutinee and the pattern to `&[u8]` and
then comparing them using `<[u8] as Eq>::eq`.

If the scrutinee is already of type `&[u8]`, then unsizing it is both
unneccessary and a trait error caught by the new and updated MIR typeck,
so this PR changes lowering to avoid doing that (match lowering tried to
avoid that before, but that attempt was quite broken).

Fixes #46920.

r? @eddyb
2018-01-19 10:18:52 +00:00
Fenrir
01059b9454 Match libunwind's EABI selection with libpanic_unwind 2018-01-19 02:26:03 -07:00
Ed Schouten
8d7f554a7f Give TargetOptions::linker a sane default value.
Though some parts of rust use cc-rs to invoke a compiler/linker, Cargo
seems to make use of the TargetOptions::linker property. Make the out of
the box experience for CloudABI a bit better by using the same compiler
name as cc-rs.
2018-01-19 09:29:58 +01:00
bors
b71cbd8443 Auto merge of #47454 - topecongiro:update-rustfmt, r=nrc
Update rustfmt to 0.3.6

r? @nrc
2018-01-19 07:35:18 +00:00
Manish Goregaokar
101f1e1193 Add regression test for #29723
fixes #29723
2018-01-19 12:28:38 +05:30
bors
10333dde82 Auto merge of #47494 - michaelwoerister:proc-macro-incremental, r=nikomatsakis
Don't include DefIndex in proc-macro registrar function symbol.

There can only ever be one registrar function per plugin or proc-macro crate, so adding the `DefIndex` to the function's symbol name does not serve a real purpose. Remove the `DefIndex` from the symbol name makes it stable across incremental compilation sessions.

This should fix issue #47292.
2018-01-19 04:45:22 +00:00
Santiago Pastorino
db41f1e1cf Add rustc-args option to test runner 2018-01-19 00:59:45 -03:00
Mark Mansi
ebfa6c709a Change the --unpretty flag to -Z unpretty
-Z unpretty no longer requires -Z unstable-options. Also, I mildly
changed the syntax of the flag to match the other -Z flags. All uses of
the flag take the form `unpretty=something` where something can either
`string` or `string=string` (see the help messages of the CLI).
2018-01-18 21:50:50 -06:00
bors
9af8d42ec7 Auto merge of #47401 - rkruppe:issue-47278, r=eddyb
Compute LLVM argument indices correctly in face of padding

Closes #47278

r? @eddyb
2018-01-19 01:58:30 +00:00
varkor
5c9a8b5041 Add instance_def_size_estimate query 2018-01-19 00:43:54 +00:00
varkor
c8e9da44a9 Update comments about the partitioning inefficiency 2018-01-19 00:42:14 +00:00
varkor
e60b0f802b Refactor CodegenUnit size estimates 2018-01-19 00:41:50 +00:00
varkor
8447f4fc0f Add CGU size heuristic for partitioning
This addresses the concern of #47316 by estimating CGU size based on
the size of its MIR. Looking at the size estimate differences for a
small selection of crates, this heuristic produces different orderings,
which should more accurately reflect optimisation time.

Fixes #47316.
2018-01-19 00:41:21 +00:00
Matthew Walinga
9a4287d263
Update CONTRIBUTING.md 2018-01-18 18:05:33 -05:00
Ed Schouten
66d53ca9e5 Make liballoc_jemalloc work on CloudABI.
The automated builds for CloudABI in dist-various-2 don't use
--disable-jemalloc, even though my original container image did. Instead
of setting that flag, let's go the extra mile of making jemalloc work.
CloudABI's C library already uses jemalloc and now exposes the API
extensions used by us.
2018-01-18 21:11:24 +01:00
Petr Sumbera
1203b3d892 Removed uneeded argument to make_indirect. 2018-01-18 11:03:49 -08:00
Petr Sumbera
af632bc1c5 Removed uneeded change. 2018-01-18 10:24:16 -08:00
Zack M. Davis
14982db2d6 in which the unused-parens lint comes to cover function and method args
Resolves #46137.
2018-01-18 08:33:58 -08:00
topecongiro
5ae8fa976a Update rustfmt to 0.3.6 2018-01-18 23:41:19 +09:00
bors
3bd4af88be Auto merge of #47528 - GuillaumeGomez:rollup, r=GuillaumeGomez
Rollup of 6 pull requests

- Successful merges: #47250, #47313, #47398, #47468, #47471, #47520
- Failed merges:
2018-01-18 14:03:12 +00:00
Petr Sumbera
f4bcfc5317 Fixes sparc64 cabi fixes.
Argument up to 16 bytes size is provided in registers.
Return value up to 32 bytes size is stored in registers.

Fixes: #46679
2018-01-18 04:26:01 -08:00
bors
44afd76788 Auto merge of #47280 - alexcrichton:update-cargo, r=kennytm
Update Cargo and its dependencies

This'll probably have a bunch of build errors, so let's try and head those off
and find them sooner rather than later!
2018-01-18 11:10:14 +00:00
Manish Goregaokar
005791b33f add target/ to ignored tidy dirs 2018-01-18 14:35:01 +05:30
Guillaume Gomez
f66e711f8b Add E0659 for ambiguous names 2018-01-18 10:01:21 +01:00
Marcel Hellwig
0c946c0179 converted space to tab in css files 2018-01-18 09:06:55 +01:00
Alex Crichton
80d6ed2d8b Update Cargo and its dependencies
This'll probably have a bunch of build errors, so let's try and head those off
and find them sooner rather than later!
2018-01-17 23:14:23 -08:00
Steven Fackler
908aa388f9 Deprecate std::net::lookup_host
We intended to do this quite a while ago but it snuck through.
2018-01-17 19:16:26 -08:00
Tobias Bucher
1b9c656943 Add some edge cases to the documentation of Path
Affected methods are `starts_with` and `strip_prefix`.
2018-01-18 01:22:20 +01:00
Niko Matsakis
072c3daa4c track recursion limit when expanding existential impl trait 2018-01-17 18:01:17 -05:00
Guillaume Gomez
260653772a Rollup merge of #47520 - mbrubeck:fstat, r=Mark-Simulacrum
Use File::metadata instead of fs::metadata to choose buffer size

This replaces a `stat` syscall with `fstat` or similar, which can be faster.  Fixes #47519.
2018-01-17 23:43:31 +01:00
Guillaume Gomez
009bc2a3aa Rollup merge of #47471 - estebank:point-to-method-e0283, r=pnkfelix
On E0283, point at method with the requirements

On required type annotation diagnostic error, point at method with the
requirements if the span is available.

CC #45453.
2018-01-17 23:43:30 +01:00
Guillaume Gomez
f692eb0d34 Rollup merge of #47468 - estebank:closure-mut-mut, r=pnkfelix
Do not suggest to make `mut` binding external to `Fn` closure

Re #46834.
2018-01-17 23:43:29 +01:00
Guillaume Gomez
49065a1419 Rollup merge of #47398 - GuillaumeGomez:pulldown-warnings, r=QuietMisdreavus
Switch to pulldown as default markdown renderer

r? @QuietMisdreavus
2018-01-17 23:43:28 +01:00
Guillaume Gomez
c0ae371a41 Rollup merge of #47313 - ollie27:rustdoc_record_extern_trait, r=QuietMisdreavus
rustdoc: Populate external_traits with traits only seen in impls

This means default methods can always be found and "Important traits" will include all spotlight traits.
2018-01-17 23:43:27 +01:00
Guillaume Gomez
6c64f0bff6 Rollup merge of #47250 - GuillaumeGomez:test-rustdoc-js, r=Mark-Simulacrum
Test rustdoc js

Add tests for the rustdoc search. It was heavily required because of all the recent breaking changes that happened while I went through improvements in doc search (add search in/for generic search for example).
2018-01-17 23:43:26 +01:00
bors
0f9c784751 Auto merge of #47522 - kennytm:rollup, r=kennytm
Rollup of 21 pull requests

- Successful merges: #47302, #47333, #47387, #47404, #47407, #47426, #47427, #47436, #47444, #47456, #47458, #47467, #47479, #47481, #47483, #47487, #47497, #47498, #47505, #47509, #47514
- Failed merges:
2018-01-17 18:38:34 +00:00
kennytm
5fade39c88 Rollup merge of #47514 - gnzlbg:whitelist_x86_fxsr, r=rkruppe
whitelist x86 fxsr feature

https://github.com/rust-lang/rust/pull/47223 properly checks that only white-listed features are allowed in combination with `target_feature`, but the `fxsr` feature used by `stdsimd` was not white-listed.

r? @alexcrichton
2018-01-18 01:57:32 +08:00
kennytm
8b22802588 Rollup merge of #47509 - cuviper:rayon-rust-installer, r=Mark-Simulacrum
Update rust-installer for streaming parallelism

Pull in rust-lang/rust-installer#76 to get streamed tarball generation,
rather than batching it all in memory, while still getting the benefit
of compressing in parallel.
2018-01-18 01:57:31 +08:00
kennytm
54299e2eb7 Rollup merge of #47505 - alexcrichton:fix-bat-spawn-regression, r=estebank
rustc: Spawn `cmd /c` for `.bat` scripts

This fixes an accidental regression #46335 where the behavior of
`Path::ends_with` is different from `str::ends_with` (paths operate over
components, strs operate over chars).
2018-01-18 01:57:30 +08:00
kennytm
fb1f01dc05 Rollup merge of #47498 - dominikWin:missing-module-name, r=petrochenkov
Make non-found module name optional

No longer uses a magic string for missing or root module.
2018-01-18 01:57:29 +08:00
kennytm
a588dcff28 Rollup merge of #47497 - goffrie:patch-1, r=dtolnay
Remove incorrect `Default::default` links, add a new one

`map_or` and `map_or_else` don't use `Default::default`, but `unwrap_or_default` does.
2018-01-18 01:57:28 +08:00
kennytm
5e1f442ba1 Rollup merge of #47487 - Pulkit07:foo, r=kennytm
implement "only-<platforms>" for test headers

This patch implements "only-<platforms>" for tests headers using which one can
specify just the platforms on which the test should run rather than listing all
the platforms to ignore using "ignore-<platforms>".

This fixes #33581 and fixes #47459.
2018-01-18 01:57:27 +08:00