Commit Graph

77082 Commits

Author SHA1 Message Date
kennytm
77777b4528
Rollup merge of #49525 - varkor:sort_by_cached_key-conversion, r=scottmcm
Use sort_by_cached_key where appropriate

A follow-up to https://github.com/rust-lang/rust/pull/48639, converting various slice sorting calls to `sort_by_cached_key` when the key functions are more expensive.
2018-04-11 19:56:41 +08:00
Oliver Schneider
3b04823dc1
Update clippy and rls 2018-04-11 13:36:31 +02:00
varkor
7ab31f6556 Prevent EPIPE causing ICEs in rustc and rustdoc 2018-04-11 11:05:13 +01:00
bors
ca26ef321c Auto merge of #49681 - tmccombs:take-set-limit-stable, r=sfackler
Stabilize take_set_limit

Fixes #42781
2018-04-11 06:03:46 +00:00
bors
43e994c8b8 Auto merge of #49715 - Mark-Simulacrum:deny-warnings, r=alexcrichton
Move deny(warnings) into rustbuild

This permits easier iteration without having to worry about warnings
being denied.

Fixes #49517
2018-04-11 03:30:04 +00:00
Scott McMurray
311ff5b441 Tweak span for ok-wrapping in no-tail block 2018-04-10 20:03:40 -07:00
Scott McMurray
c88efe46b8 Fix the unstable book to account for ok-wrapping 2018-04-10 20:03:40 -07:00
Scott McMurray
aeb2353df5 Add a UI test that the span for the catch type error is in the right place 2018-04-10 20:03:40 -07:00
Scott McMurray
c4b6521327 Add ok-wrapping to catch blocks, per RFC 2018-04-10 20:03:40 -07:00
Steven Malis
51f24ec7f0 Add symmetric requirement of PartialOrd. 2018-04-10 19:41:10 -07:00
Mark Simulacrum
53718d2ef1 Allow incorrectly reported unused attribute warning 2018-04-10 20:04:57 -06:00
bors
88ebd97d65 Auto merge of #49695 - michaelwoerister:unhygienic-ty-min, r=nikomatsakis
Use InternedString instead of Symbol for type parameter types (2)

Reduced alternative to #49266. Let's see if this causes a performance regression.
2018-04-11 00:51:38 +00:00
QuietMisdreavus
43301e55a1 add target features when extracting and running doctests 2018-04-10 19:22:11 -05:00
memoryleak47
a648267dff fixed typo 2018-04-11 01:34:10 +02:00
Felix S. Klock II
746d63a203 Checkpoint the current status of NLL on ui tests via compare-mode=nll. 2018-04-11 00:38:35 +02:00
Felix S. Klock II
1c8d2bdda1 Workaround rust-lang/rust#49855 by forcing rustc_error in any mode, including NLL.
NOTE: I was careful to make each change in a manner that preserves the
existing diagnostic output (usually by ensuring that no lines were
added or removed). This means that the resulting source files are not
as nice to read as they were at the start. But we will have to review
these cases by hand anyway as follow-up work, so cleanup could
reasonably happen then (or not at all).
2018-04-11 00:20:05 +02:00
Amanieu d'Antras
5e5374677a Fix "fp" feature for AArch64 2018-04-10 22:34:15 +01:00
varkor
6e0089ea77 Do not uppercase-lint no_mangle statics 2018-04-10 22:30:23 +01:00
Alex Crichton
6d7cfd4f1a proc_macro: Avoid cached TokenStream more often
This commit adds even more pessimization to use the cached `TokenStream` inside
of an AST node. As a reminder the `proc_macro` API requires taking an arbitrary
AST node and transforming it back into a `TokenStream` to hand off to a
procedural macro. Such functionality isn't actually implemented in rustc today,
so the way `proc_macro` works today is that it stringifies an AST node and then
reparses for a list of tokens.

This strategy unfortunately loses all span information, so we try to avoid it
whenever possible. Implemented in #43230 some AST nodes have a `TokenStream`
cache representing the tokens they were originally parsed from. This
`TokenStream` cache, however, has turned out to not always reflect the current
state of the item when it's being tokenized. For example `#[cfg]` processing or
macro expansion could modify the state of an item. Consequently we've seen a
number of bugs (#48644 and #49846) related to using this stale cache.

This commit tweaks the usage of the cached `TokenStream` to compare it to our
lossy stringification of the token stream. If the tokens that make up the cache
and the stringified token stream are the same then we return the cached version
(which has correct span information). If they differ, however, then we will
return the stringified version as the cache has been invalidated and we just
haven't figured that out.

Closes #48644
Closes #49846
2018-04-10 13:05:13 -07:00
bors
0b72d48f8e Auto merge of #48914 - gaurikholkar:e0389, r=nikomatsakis
Modify compile-fail/E0389 error message WIP

This fixes #47388

cc @nikomatsakis @estebank

r? @nikomatsakis

Certain ui tests were failing locally. I'll check if the same happens here too.
2018-04-10 19:00:19 +00:00
Alec Mocatta
18e9532098
Add --enable-debug flag to musl CI build script
Building for x86_64-unknown-linux-musl currently results in an executable lacking debug information for musl libc itself. If you request a backtrace in GDB while control flow is within musl – including sycalls made by musl – the result looks like:

#0  0x0000000000434b46 in __cp_end ()
#1  0x0000000000432dbd in __syscall_cp_c ()
#2  0x0000000000000000 in ?? ()

i.e. not very helpful. Adding --enable-debug resolves this, and --enable-optimize re-enables optimisations which default to off given the previous flag.
2018-04-10 18:44:47 +01:00
Shotaro Yamada
e986510bde Add test 2018-04-11 01:17:59 +09:00
Shotaro Yamada
bbed61d3d2 Extend ExternCrate to cover externs inferred from use or paths 2018-04-11 01:17:59 +09:00
bors
b2a7b94b8e Auto merge of #49386 - GuillaumeGomez:fix-path-attribute, r=eddyb
Add tcx in item_body_nested_bodies

Fixes #47391.

r? @eddyb
2018-04-10 12:58:27 +00:00
John Kåre Alsaker
006f9b2f56 Make Session.injected_panic_runtime thread-safe 2018-04-10 14:40:26 +02:00
John Kåre Alsaker
dacf9ba00f Make Session.injected_allocator and Session.allocator_kind thread-safe 2018-04-10 14:40:26 +02:00
John Kåre Alsaker
66488a50f9 Make Session.dependency_formats thread-safe 2018-04-10 14:40:26 +02:00
John Kåre Alsaker
cbf8ad4a40 Make Session.crate_types thread-safe 2018-04-10 14:40:26 +02:00
John Kåre Alsaker
046af1c710 Make sure Session.plugin_attributes is only used on one thread 2018-04-10 14:40:26 +02:00
John Kåre Alsaker
0e51d48324 Make sure Session.plugin_llvm_passes is only used on one thread 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
7d33d1a84e Make Session.has_global_allocator thread-safe 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
73b26f7f51 Make sure Session.imported_macro_spans is only used on one thread 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
271c8d362a Make Session.crate_disambiguator thread-safe 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
8380539ecb Make sure Session.next_node_id is only used on one thread 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
b0c7bdaa97 Make Session.code_stats thread-safe 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
904e2b6b35 Make Session::features_untracked thread-safe 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
a46f05978a Disable optimization fuel when using multiple threads 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
a23e90a6de Remove Cell from const_eval_stack_frame_limit and const_eval_step_limit 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
753cd9a12c Make sure Session.incr_comp_session is only used on one thread 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
e82b6c42b4 Make Session.plugin_registrar_fn and Session.derive_registrar_fn thread-safe 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
27adb31fcc Combine Session.entry_fn and Session.entry_type and make them thread-safe 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
7aa7198b4b Make PerfStats thread-safe and remove unused fields 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
05c4ea47fe Remove derive_macros 2018-04-10 14:40:25 +02:00
John Kåre Alsaker
cf3b7909fa Make recursion_limit and type_length_limit thread-safe 2018-04-10 14:39:57 +02:00
John Kåre Alsaker
472b416592 Querify all_traits 2018-04-10 14:39:57 +02:00
John Kåre Alsaker
49a2b80877 Make sure the lint store is only used on one thread 2018-04-10 14:39:33 +02:00
John Kåre Alsaker
26f16e85ff Add a Once type for values which are only written once 2018-04-10 14:39:33 +02:00
John Kåre Alsaker
60d0cbe532 Add insert_same extension to HashMap 2018-04-10 14:39:33 +02:00
John Kåre Alsaker
e5a602e364 Add OneThread which only allows its inner value to be used in one thread 2018-04-10 14:39:33 +02:00
varkor
7575d96a98 Reformat trans skip condition 2018-04-10 11:12:21 +01:00