Commit Graph

92210 Commits

Author SHA1 Message Date
Stepan Koltsov
fd4ac0e26c Hasher: replace unsafe trasmute with to_ne_bytes
Spead the knowledge of `to_ne_bytes` functions existence.
2019-04-15 00:33:10 +01:00
bors
c090ab471d Auto merge of #59965 - Manishearth:clippyup, r=Xanewok
Update clippy

One of our tests using the alloc crate broke because alloc was stabilized.

r? @oli-obk
2019-04-14 23:30:48 +00:00
Manish Goregaokar
feaf2ae319 Update clippy 2019-04-14 15:56:58 -07:00
Oliver Middleton
1db76c1bff rustdoc: Remove default keyword from re-exported trait methods 2019-04-14 23:55:14 +01:00
vlad-boroda
40536548f9 Fix rustdoc sidebar z-index 2019-04-14 22:54:08 +03:00
bors
aa99abeb26 Auto merge of #59335 - Aaron1011:fix/extern-priv-final, r=Aaron1011
Properly parse '--extern-private' with name and path

It turns out that https://github.com/rust-lang/rust/pull/57586 didn't properly parse `--extern-private name=path`.

This PR properly implements the `--extern-private` option. I've added a new `extern-private` option to `compiletest`, which causes an `--extern-private` option to be passed to the compiler with the proper path.

Part of https://github.com/rust-lang/rust/issues/44663
2019-04-14 19:47:40 +00:00
Aaron Hill
5cd51b1d84
Fix typo in comment 2019-04-14 15:45:19 -04:00
Aaron Hill
7ba8a9e685
Fix Windows dll name format 2019-04-14 15:45:19 -04:00
Aaron Hill
3c7c2c6ca7
Handle --extern-private properly on musl
On musl (and some other platforms), compiletest ends up creating a static rlib
(instead of a dylib) when building 'aux-build' crates.

This commit changes the '--extern-private' path computed by compiletest
to properly take this into account
2019-04-14 15:45:18 -04:00
Aaron Hill
4dfce34912
Derive Default for ExternEntry 2019-04-14 15:45:18 -04:00
Aaron Hill
872c20d415
Fix ExternEntry test 2019-04-14 15:45:18 -04:00
Aaron Hill
724f6a11b3
Update rustdoc to new ExternEntry format 2019-04-14 15:45:18 -04:00
Aaron Hill
482b77a147
Refactor structure of ExternEntry 2019-04-14 15:45:18 -04:00
Aaron Hill
b23a8830f9
Move new_public to 'tess' module 2019-04-14 15:45:18 -04:00
Aaron Hill
0f88106940
Improve formatting 2019-04-14 15:45:18 -04:00
Aaron Hill
87734b1f25
Fix tests 2019-04-14 15:45:03 -04:00
bors
9cd61f025b Auto merge of #59967 - Centril:rollup-bdqq7ux, r=Centril
Rollup of 7 pull requests

Successful merges:

 - #59856 (update polonius-engine)
 - #59877 (HirIdify hir::Def)
 - #59896 (Remove duplicated redundant spans)
 - #59900 (Remove [mut] syntax in pin docs)
 - #59906 (Make BufWriter use get_mut instead of manipulating inner in Write implementation)
 - #59936 (Fix cross-crate visibility of fictive variant constructors)
 - #59957 (Add missing backtick to Symbol documentation.)

Failed merges:

r? @ghost
2019-04-14 17:00:16 +00:00
Mazdak Farrokhzad
c348bb69d6
Rollup merge of #59957 - krk:fix-doctypo-symbol, r=jonas-schievink
Add missing backtick to Symbol documentation.
2019-04-14 17:49:27 +02:00
Mazdak Farrokhzad
9506f62a7a
Rollup merge of #59936 - petrochenkov:confict, r=davidtwco
Fix cross-crate visibility of fictive variant constructors

After merging https://github.com/rust-lang/rust/pull/59376 I realized that the code in the decoder wasn't entirely correct - we "decoded" fictive variant constructors with their variant's visibility, which could be public, rather than demoted to `pub(crate)`.

Fictive constructors are not directly usable in expression/patterns, but the effect still can be observed with imports.

r? @davidtwco
2019-04-14 17:49:26 +02:00
Mazdak Farrokhzad
271eb8fc5a
Rollup merge of #59906 - czipperz:bufwriter-use-getmut, r=kennytm
Make BufWriter use get_mut instead of manipulating inner in Write implementation

`get_mut` allows us to abstract over the implementation detail of inner being optional.
2019-04-14 17:49:24 +02:00
Mazdak Farrokhzad
fd4a3362ca
Rollup merge of #59900 - czipperz:remove-bracket-mut-syntax-in-pin-docs, r=RalfJung
Remove [mut] syntax in pin docs

Resolves #59832
2019-04-14 17:49:23 +02:00
Mazdak Farrokhzad
99a91094ec
Rollup merge of #59896 - estebank:dedup-spans, r=davidtwco
Remove duplicated redundant spans

Fix #59895.
2019-04-14 17:49:21 +02:00
Mazdak Farrokhzad
27adc935fb
Rollup merge of #59877 - Zoxc:hiridify_def_id, r=eddyb
HirIdify hir::Def

cc @ljedrz
r? @oli-obk
2019-04-14 17:49:19 +02:00
Mazdak Farrokhzad
b9da8a7144
Rollup merge of #59856 - albins:update-polonius, r=nikomatsakis
update polonius-engine

This updates polonius-engine to [version 0.7.0](https://github.com/rust-lang/polonius/blob/master/RELEASES.md#v070), which adds a hybrid algorithm that starts off with performing a cheaper, location-insensitive analysis before proceeding with the full analysis.

r? @nikomatsakis
2019-04-14 17:49:18 +02:00
bors
d70c5a912e Auto merge of #59929 - RalfJung:miri, r=oli-obk
update miri

Fixes https://github.com/rust-lang/rust/issues/59901
2019-04-14 12:55:21 +00:00
krk
8f3fd85da4 Add missing backtick to Symbol documentation. 2019-04-14 14:27:54 +02:00
Vadim Petrochenkov
dbc7042bfe Address review comments 2019-04-14 12:37:22 +03:00
Vadim Petrochenkov
3c3a140294 Fix cross-crate visibility of fictive variant constructors 2019-04-14 12:22:44 +03:00
Ralf Jung
3f858516c0 update miri 2019-04-14 11:02:18 +02:00
bors
60076bb8f7 Auto merge of #59693 - nnethercote:64-bit-Spans, r=petrochenkov
Increase `Span` from 4 bytes to 8 bytes.

This increases the size of some important types, such as `ast::Expr` and
`mir::Statement`. However, it drastically reduces how much the interner
is used, and the fields are more natural sizes that don't require bit
operations to extract.

As a result, instruction counts drop across a range of workloads, by as
much as 10% for `script-servo` incremental builds.

Peak memory usage goes up a little for some cases, but down by more for
some other cases -- as much as 18% for non-incremental builds of
`packed-simd`.

The commit also:
- removes the `repr(packed)`, because it has negligible effect, but can
  cause undefined behaviour;
- replaces explicit impls of common traits (`Copy`, `PartialEq`, etc.)
  with derived ones.

r? @petrochenkov
2019-04-14 08:55:16 +00:00
Ralf Jung
e2d88171a3 huge-enum also exhibits this error 2019-04-14 10:24:49 +02:00
Ralf Jung
8ef7ca1302 make lint levels more consistent 2019-04-14 10:16:23 +02:00
Ralf Jung
184939fe98 some more tests need normalization 2019-04-14 10:01:32 +02:00
Ralf Jung
3a39b431e8 normalize away spurious error 2019-04-14 10:01:32 +02:00
Ralf Jung
6cd7c8b04a normalize flags and rustc version in ICE repro 2019-04-14 10:01:32 +02:00
Ralf Jung
fa1cc72f41 fix output test for backtrace-debuginfo.rs 2019-04-14 10:01:32 +02:00
Ralf Jung
d2e183fd99 fix tests 2019-04-14 10:01:32 +02:00
Ralf Jung
8c5292eb8f compiletest normalization: preserve non-JSON lines such as ICEs 2019-04-14 10:01:32 +02:00
Ralf Jung
cdf1d368e2 bump stdsimd; make intra_doc_link_resolution_failure an error again 2019-04-14 10:00:22 +02:00
John Kåre Alsaker
b5d43fcdc9 Update tests 2019-04-14 09:30:03 +02:00
ljedrz
3b99a48c4d HirIdify hir::Def 2019-04-14 09:30:02 +02:00
bors
464473ab3b Auto merge of #59798 - rchaser53:issue-59488, r=estebank
Improvement for comparision against fn

I try to add error message.
related: https://github.com/rust-lang/rust/issues/59488
2019-04-14 05:58:13 +00:00
Aaron Hill
a6ae8abdd6
Fix tidy 2019-04-14 00:37:25 -04:00
Aaron Hill
7cc3ce3bbd
Combine 'Extern' and 'ExternPrivate' 2019-04-14 00:37:25 -04:00
Aaron Hill
21491dc701
Properly parse '--extern-private' with name and path 2019-04-14 00:37:25 -04:00
bors
ee621f4232 Auto merge of #59950 - Centril:rollup-hpmr62i, r=Centril
Rollup of 6 pull requests

Successful merges:

 - #59776 (Apply resource-suffix to search-index and source-files scripts as well)
 - #59784 (Suggest importing macros from the crate root)
 - #59812 (Exclude profiler-generated symbols from MSVC __imp_-symbol workaround.)
 - #59874 (Clean up handling of `-Z pgo-gen` commandline option.)
 - #59890 (Don't generate empty json variables)
 - #59911 (Revert "compile crates under test w/ -Zemit-stack-sizes")

Failed merges:

r? @ghost
2019-04-14 01:10:57 +00:00
Mazdak Farrokhzad
a6b8097586
Rollup merge of #59911 - pnkfelix:revert-pr-59401-to-fix-emit-stack-sizes-gc-sections-ld-gold-bug, r=alexcrichton
Revert "compile crates under test w/ -Zemit-stack-sizes"

Revert PR #59401 to fix issue #59652 (a stable-to-beta regression).

This is result of squashing two revert commits:

Revert "compile all crates under test w/ -Zemit-stack-sizes"

This reverts commit 7d365cf27f.

Revert "bootstrap: build compiler-builtins with -Z emit-stack-sizes"

This reverts commit 8b8488ce8f.

----

(My intention is that someone can re-add this code again later, either after the `ld.gold` issue itself is fixed, or with safe-guards to check whether `ld.gold` is in use and then issuing warnings about the problems here when they arise.)
2019-04-14 00:39:50 +02:00
Mazdak Farrokhzad
426ab8e018
Rollup merge of #59890 - GuillaumeGomez:empty-json-variables, r=QuietMisdreavus
Don't generate empty json variables

r? @rust-lang/rustdoc
2019-04-14 00:39:48 +02:00
Mazdak Farrokhzad
021a8eca47
Rollup merge of #59874 - michaelwoerister:pgo-updates-1, r=cramertj
Clean up handling of `-Z pgo-gen` commandline option.

This PR adapts the `-Z pgo-gen` flag to how Clang and GCC handle the corresponding `-fprofile-generate` flag. In particular, the flag now optionally takes a directory to place the profiling data in and allows to omit the argument (instead of having to pass an empty string).
2019-04-14 00:39:46 +02:00
Mazdak Farrokhzad
7ff376b3b2
Rollup merge of #59812 - michaelwoerister:profile-gen-msvc-imp, r=alexcrichton
Exclude profiler-generated symbols from MSVC __imp_-symbol workaround.

LLVM's profiling instrumentation adds a few symbols that are used by the profiler runtime. Since these show up as globals in the LLVM IR, the compiler generates `dllimport`-related `__imp_` stubs for them. This can lead to linker errors because the instrumentation symbols have weak linkage or are in a comdat section, but the `__imp_` stubs aren't.

Instead of trying to replicate the linkage/comdat setup for the stubs, this PR just excludes the profiler-related symbols from stub-generation since they aren't supposed to be referenced via `__declspec(dllimport)` anywhere anyway.

r? @alexcrichton

EDIT: I considered making this more general, i.e. inferring from the symbol name if it is a Rust symbol or not. But then I figured out that that would yield false negatives for `#[no_mangle]` et al, so I went with a blacklist approach.
2019-04-14 00:39:44 +02:00