102454 Commits

Author SHA1 Message Date
Stefan Lankes
969b741446 protect creation of destructors by a mutex
add on HermizCore an additional lock to protect static data
2019-11-13 00:21:05 +01:00
Andy Russell
fe4b709c0c
expand source_util macros with def-site context 2019-11-12 17:48:33 -05:00
Mark Rousskov
994d83666d Remove no longer needed mutability 2019-11-12 16:37:22 -05:00
Mark Rousskov
f6832adadb Compiletest bump to stage0 bootstrap libtest 2019-11-12 16:36:57 -05:00
Mark Rousskov
8783766215 Hopefully fix rustdoc build
It's super unclear why this broke when we switched to beta but not
previously -- but at least it's hopefully fixed now.
2019-11-12 16:36:57 -05:00
Mark Rousskov
997feacddd Snap cfgs 2019-11-12 16:36:57 -05:00
Mark Rousskov
f4edc81ac4 Bump version to 1.41 2019-11-12 16:36:57 -05:00
bors
a333eed7fc Auto merge of #60026 - Aaron1011:feature/miri-unwind, r=RalfJung,oli-obk
Add hooks for Miri panic unwinding

This commits adds in some additional hooks to allow Miri to properly
handle panic unwinding. None of this should have any impact on CTFE mode

This supports https://github.com/rust-lang/miri/pull/693
2019-11-12 21:27:04 +00:00
Camille GILLOT
552fa64798 Bless mir-dump test. 2019-11-12 22:02:55 +01:00
Camille GILLOT
a1af690ab3 Bless symbol-names. 2019-11-12 20:50:47 +01:00
Camille GILLOT
4caa66f25d Centril review. 2019-11-12 20:50:47 +01:00
Camille GILLOT
6b56dced4c Fix tidy. 2019-11-12 20:50:47 +01:00
Camille GILLOT
f9ff78bdd5 Remove cruft. 2019-11-12 20:50:47 +01:00
Camille GILLOT
3ebfa1856e Rename in librustdoc. 2019-11-12 20:50:47 +01:00
Camille GILLOT
1f2c18cdbd Rename in librustc_codegen_llvm. 2019-11-12 20:50:46 +01:00
Camille GILLOT
25fab7ecf5 Rename in librustc_codegen_ssa. 2019-11-12 20:50:46 +01:00
Camille GILLOT
c67125260b Rename in librustc_codegen_utils. 2019-11-12 20:50:46 +01:00
Camille GILLOT
7378c25f25 Rename in librustc_mir. 2019-11-12 20:50:45 +01:00
Camille GILLOT
028c83cdf6 Rename in librustc_typecheck. 2019-11-12 20:14:53 +01:00
Camille GILLOT
ff6b7cd7c1 Rename in librustc_traits. 2019-11-12 20:14:53 +01:00
Camille GILLOT
ee33e0279a Refactor pretty_print_const. 2019-11-12 20:14:53 +01:00
Camille GILLOT
e5fb784823 Create intermediate enum ty::ConstKind. 2019-11-12 20:14:52 +01:00
Eric Huss
32d1f47a06 Fix mdbook-linkcheck license checks. 2019-11-12 10:45:33 -08:00
Eric Huss
139477df64 Update mdbook. 2019-11-12 10:14:48 -08:00
Mark Rousskov
2fd545485a Register queries with self profiler in rustc_interface 2019-11-12 13:13:14 -05:00
Mark Rousskov
8c29b74b15 Remove dead code for encoding/decoding lint IDs
This helps decouple the lint system from needing the implicit TLS TyCtxt
as well.
2019-11-12 13:04:31 -05:00
bors
4f03f4a989 Auto merge of #65608 - matthewjasper:mir-eval-order, r=pnkfelix
Fix MIR lowering evaluation order and soundness bug

* Fixes a soundness issue with built-in index operations
* Ensures correct evaluation order of assignment expressions where the RHS is a FRU or is a use of a local of reference type.
* Removes an unnecessary symbol to string conversion

closes #65909
closes #65910
2019-11-12 18:02:54 +00:00
Eric Huss
e0f2f9d363 Update Cargo, books 2019-11-12 09:57:41 -08:00
Mark Rousskov
f696b21c5f Move self-profile infrastructure to data structures
The single dependency on queries (QueryName) can be fairly easily
abstracted via a trait and this further decouples Session from librustc
(the primary goal).
2019-11-12 12:48:04 -05:00
Josh Stone
bfa5e5f788 Fallback to the unmodified path in bindir_relative 2019-11-12 09:42:46 -08:00
Mark Mansi
b84c96a91b update rustc-guide 2019-11-12 10:46:24 -06:00
Yuki Okushi
74d45afbf5 Add test for issue-63279 2019-11-13 00:37:00 +09:00
Yuki Okushi
412f0006f5 Add test for issue-52432 2019-11-13 00:36:38 +09:00
Yuki Okushi
bae9832f71 Add test for issue-40231 2019-11-13 00:36:20 +09:00
Yuki Okushi
ec45882b42 Add test for issue-30904 2019-11-13 00:35:57 +09:00
Nadrieril
e398d897b0 Move NonExhaustive checks to the relevant match branches 2019-11-12 15:02:00 +00:00
Nadrieril
357d53c4ce Introduce Constructor::NonExhaustive
It counts as an extra constructor for types that are not allowed to be
matched exhaustively.
2019-11-12 15:02:00 +00:00
Nadrieril
eb99c73e04 Match constructor first in Constructor methods
This makes it easier to add new non-standard constructors, and this also
ensures that we don't forget cases when adding a new constructor.
2019-11-12 15:02:00 +00:00
bors
5dda3ee931 Auto merge of #66318 - mati865:llvm-update, r=matthewjasper
Update LLVM submodule

Fixes https://github.com/rust-lang/rust/issues/66315
2019-11-12 12:55:02 +00:00
Santiago Pastorino
695e91a1d5
check-consts remove cannot mutate statics in initializer of another static error 2019-11-12 13:20:52 +01:00
Santiago Pastorino
b941034f2f
qualify-const remove cannot mutate statics in initializer of another static error 2019-11-12 13:20:19 +01:00
Mateusz Mikuła
5a1aa8def3 Update llvm submodule 2019-11-12 11:02:17 +01:00
bors
a19f93410d Auto merge of #66323 - JohnTitor:rollup-jl8xdk4, r=JohnTitor
Rollup of 11 pull requests

Successful merges:

 - #65965 (Clean up librustc_typeck error_codes file)
 - #66230 (remove vestigial comments referring to defunct numeric trait hierarchy)
 - #66241 (bump openssl version)
 - #66257 (Drop long-section-names linker workaround for windows-gnu)
 - #66263 (make the error message more readable)
 - #66267 (Add rustdoc doc)
 - #66276 (Move lock into CodeStats)
 - #66278 (Fix error message about exported symbols from proc-macro crates)
 - #66280 (Fix HashSet::union performance)
 - #66299 (support issue = "none" in unstable attributes )
 - #66309 (Tiny cleanup to size assertions)

Failed merges:

r? @ghost
2019-11-12 08:23:32 +00:00
Yuki Okushi
420f926306
Rollup merge of #66309 - petrochenkov:annoying, r=Mark-Simulacrum
Tiny cleanup to size assertions

The need to write `#[cfg(target_arch = "x86_64")]` twice mildly annoys me, the full paths look better in comparison.
2019-11-12 16:36:18 +09:00
Yuki Okushi
4134a4acf5
Rollup merge of #66299 - rossmacarthur:fix-41260-avoid-issue-0, r=varkor
support issue = "none" in unstable attributes

This works towards fixing #41260.

This PR allows the use of `issue = "none"` in unstable attributes and makes changes to internally store the issue number as an `Option<NonZeroU32>`. For example:

```rust
#[unstable(feature = "unstable_test_feature", issue = "none")]
fn unstable_issue_none() {}
```

It was not made optional because feedback seen here #60860 suggested that people might forget the issue field if it was optional.

I could not remove the current uses of `issue = "0"` (of which there are a lot) because the stage 0 compiler expects the old syntax. Once this is available in the stage 0 compiler we can replace all uses of `"0"` with `"none"` and no longer allow `"0"`. This is my first time contributing, so I'm not sure what the protocol is with two-part things like this, so some guidance would be appreciated.

r? @varkor
2019-11-12 16:36:16 +09:00
Yuki Okushi
6bdd1beca6
Rollup merge of #66280 - stepancheg:union, r=alexcrichton
Fix HashSet::union performance

Consider this example: small_set = 0..2, large_set = 0..1000.

To efficiently compute the union of these sets, we should
* take all elements of the larger set
* for each element of the smaller set check it is not in the larger set

This is exactly what this commit does.

This particular optimization was implemented a year ago, but the
author mistaken `<` and `>`.
2019-11-12 16:36:15 +09:00
Yuki Okushi
8e0265c268
Rollup merge of #66278 - LukasKalbertodt:fix-proc-macro-error, r=Centril
Fix error message about exported symbols from proc-macro crates

Someone forgot to update the error message after `#[proc_macro]` and
`#[proc_macro_attribute]` were stabilized.
2019-11-12 16:36:13 +09:00
Yuki Okushi
dfd11229b3
Rollup merge of #66276 - Mark-Simulacrum:sess-code-stats, r=nikomatsakis
Move lock into CodeStats

Prevent (theoretical) accidental too-long borrows by ensuring only encapsulated locking.
2019-11-12 16:36:12 +09:00
Yuki Okushi
cde5637394
Rollup merge of #66267 - GuillaumeGomez:add-rustdoc-doc, r=kinnison
Add rustdoc doc

r? @kinnison
2019-11-12 16:36:10 +09:00
Yuki Okushi
896484c71f
Rollup merge of #66263 - guanqun:make-error-explicit, r=alexcrichton
make the error message more readable

When I type it wrong e.g. `--stage --bless`, missing a number here, this change would make it more explicit what's going wrong here.
2019-11-12 16:36:08 +09:00