Commit Graph

103801 Commits

Author SHA1 Message Date
Yuki Okushi
0b471bffc3
Rollup merge of #67033 - cuviper:ValueName2, r=rkruppe
Migrate to LLVM{Get,Set}ValueName2

The deprecated `LLVM{Get,Set}ValueName` only work with NUL-terminated
strings, but the `2` variants use explicit lengths, which fits better
with Rust strings and slices. We now use these in new helper functions
`llvm::{get,set}_value_name` that convert to/from `&[u8]`.

Closes #64223.
r? @rkruppe
2019-12-07 00:10:02 +09:00
Yuki Okushi
fd4cec0303
Rollup merge of #67023 - jethrogb:jb/bootstrap-target-linker, r=alexcrichton
SGX: Fix target linker used by bootstrap

Bootstrap, for some reason, overrides the target linker. This is not correct for x86_64-fortanix-unknown-sgx. Add such targets to the list of exceptions.

r? @alexcrichton
2019-12-07 00:10:00 +09:00
Yuki Okushi
0df1609215
Rollup merge of #67008 - ollie27:rustdoc_issue_61732, r=Centril
rustdoc: Add test for fixed issue

#61732 was almost certainly fixed by #63400.

Closes #61732
2019-12-07 00:09:59 +09:00
Yuki Okushi
cdbdb686f9
Rollup merge of #66998 - Wind-River:master_up, r=alexcrichton
Modified the testcases for VxWorks
2019-12-07 00:09:57 +09:00
Yuki Okushi
7249af0c7b
Rollup merge of #66988 - osa1:issue66985, r=matthewjasper
Fix angle bracket formatting when dumping MIR debug vars

Fixes #66985
2019-12-07 00:09:55 +09:00
Yuki Okushi
afd9e95b8b
Rollup merge of #66959 - GuillaumeGomez:cfg-duplicates, r=eddyb
Remove potential cfgs duplicates

Fixes https://github.com/rust-lang/rust/issues/66921.

Before going any further (the issue seems to be linked to metadata as far as I can tell). Do you think this is the good place to do it or should it be done before?

r? @eddyb
2019-12-07 00:09:54 +09:00
Yuki Okushi
2a4f638d24
Rollup merge of #66846 - gizmondo:master, r=michaelwoerister
Make try_mark_previous_green aware of cycles.

Fixes #61323

r? @michaelwoerister
2019-12-07 00:09:52 +09:00
Matthew Kraai
0c4bc58cee Change "either" to "any" in Layout::from_size_align's docs 2019-12-06 07:06:03 -08:00
Georg Semmler
089a894193
Merge branch 'bugfix/issue_66295' of github.com:weiznich/rust into bugfix/issue_66295 2019-12-06 15:10:07 +01:00
Georg Semmler
9598cf416d
Remove failing test case 2019-12-06 15:09:01 +01:00
varkor
f1db60ca95 Fix rebase issues 2019-12-06 13:09:03 +00:00
Simon Sapin
a213ff8299 Move numeric From and TryFrom impls to libcore/convert/num.rs
This makes `libcore/num/mod.rs` slightly smaller. It’s still 4911 lines and not easy to navigate. This doesn’t change any public API.
2019-12-06 14:00:45 +01:00
Simon Sapin
cba479f75c Add {f32,f64}::approx_unchecked_to<Int> unsafe methods
As discussed in https://github.com/rust-lang/rust/issues/10184

Currently, casting a floating point number to an integer with `as` is Undefined Behavior if the value is out of range. `-Z saturating-float-casts` fixes this soundness hole by making `as` “saturate” to the maximum or minimum value of the integer type (or zero for `NaN`), but has measurable negative performance impact in some benchmarks. There is some consensus in that thread for enabling saturation by default anyway, but provide an `unsafe fn` alternative for users who know through some other mean that their values are in range.
2019-12-06 14:01:05 +01:00
Simon Sapin
f442797c17 Make core::convert a directory-module with mod.rs 2019-12-06 13:56:25 +01:00
Markus Reiter
79f876495b Remove boxed closures in address parser. 2019-12-06 13:28:02 +01:00
varkor
442514884d Use Instant::now lazily 2019-12-06 12:24:54 +00:00
varkor
9f1269f23c Rename to then_some and then 2019-12-06 12:24:54 +00:00
varkor
8579fe6fc3 Use as_ref().map() rather than is_some().to_option() 2019-12-06 12:23:44 +00:00
varkor
6ea469712d Fix libcore tests 2019-12-06 12:23:23 +00:00
varkor
50985b012a Use to_option_with in several places 2019-12-06 12:23:23 +00:00
varkor
e3a8ea4e18 Use to_option in various places 2019-12-06 12:23:23 +00:00
varkor
51901eea8c Rename bool's then to to_option 2019-12-06 12:20:08 +00:00
Remy Rakic
1314ba323b add subset relations test using polonius
It's a relatively simple smoke-test for subset errors, executed outside
of the polonius compare-mode.
2019-12-06 11:50:02 +01:00
Remy Rakic
e2230a4366 appease the vociferous tidy 2019-12-06 11:50:02 +01:00
Remy Rakic
720716f9d0 bless polonius output due to lacking the 'static special-casing 2019-12-06 11:50:02 +01:00
Remy Rakic
695640816a bless polonius output of test ui/nll/outlives-suggestion-simple.rs
The polonius output has one more error which should be displayed
in the regular case, but error reporting in the regular case stopped
at the first error.

Admittedly it would be nice to combine suggestions for the same source
lifetime so that `'a: 'b` and `'a: 'c` are not bothsuggested, but instead
a single `'a: 'b + 'c` is.
2019-12-06 11:50:02 +01:00
Remy Rakic
67b04d5f64 bless polonius output of test hrtb-perfect-forwarding.rs
The plan is to use chalk and not have polonius deal with this.
2019-12-06 11:50:02 +01:00
Remy Rakic
02a6662e2f Implement subset errors using Polonius
- switches to using the Naive variant by default
- emits subset errors or propagates unsatisfied obligations
  to the caller
2019-12-06 11:50:02 +01:00
Remy Rakic
7a3dca69bb Polonius: emit placeholder and known_subset facts, as inputs to the subset error computation 2019-12-06 11:50:01 +01:00
Remy Rakic
4dd6292c3c UniversalRegionRelations: add a way to list the base non-transitive outlives constraints 2019-12-06 11:50:01 +01:00
Remy Rakic
4b16ae1609 Add a way to list the base non-transitive edges in TransitiveRelation 2019-12-06 11:50:01 +01:00
lqd
479cc7ae9a update to polonius 0.11 to compute subset errors
- adapt to the new polonius `FactTypes` API
- reorganize the type aliases referring to polonius to avoid referencing the inner atom or fact types multiple times: only one input and output types should be enough for everyone. They could equally be in `borrow_check` as `nll` though.
2019-12-06 11:50:01 +01:00
Alex Aktsipetrov
de255a9163 Make try_mark_previous_green aware of cycles. 2019-12-06 12:48:53 +03:00
bors
d0126e8ed3 Auto merge of #67080 - JohnTitor:rollup-2t6fm3u, r=JohnTitor
Rollup of 10 pull requests

Successful merges:

 - #66649 (VxWorks: fix issues in accessing environment variables)
 - #66764 (Tweak wording of `collect()` on bad target type)
 - #66900 (Clean up error codes)
 - #66974 ([CI] fix the `! isCI` check in src/ci/run.sh)
 - #66979 (Add long error for E0631 and update ui tests.)
 - #67017 (cleanup long error explanations)
 - #67021 (Fix docs for formatting delegations)
 - #67041 (add ExitStatusExt into prelude)
 - #67065 (Fix fetching arguments on the wasm32-wasi target)
 - #67066 (Update the revision of wasi-libc used in wasm32-wasi)

Failed merges:

r? @ghost
2019-12-06 07:43:56 +00:00
Ömer Sinan Ağacan
5ddfbc2e2b Fix Query type docs
`give` no longer exists, `compute` is used to generate query results
now.
2019-12-06 10:41:51 +03:00
Yuki Okushi
acd2b0835d
Rollup merge of #67066 - alexcrichton:update-wasi-libc, r=Mark-Simulacrum
Update the revision of wasi-libc used in wasm32-wasi

This commit updates the `wasi-libc` repository used to build the
wasm32-wasi target's libstd to ensure that both libstd and libc are
using the same wasi snapshot version.
2019-12-06 15:37:14 +09:00
Yuki Okushi
f77b8d355b
Rollup merge of #67065 - alexcrichton:update-wasi, r=sfackler
Fix fetching arguments on the wasm32-wasi target

Fixes an error introduced in #66750 where wasi executables always think
they have zero arguments because one of the vectors returned here
accidentally thought it was length 0.
2019-12-06 15:37:13 +09:00
Yuki Okushi
1bb868c5d6
Rollup merge of #67041 - Wind-River:master_base, r=alexcrichton
add ExitStatusExt into prelude

r? @alexcrichton
2019-12-06 15:37:11 +09:00
Yuki Okushi
f7c2631d4a
Rollup merge of #67021 - elichai:2019-12-fmt, r=QuietMisdreavus
Fix docs for formatting delegations

If you use the example in the docs right now it breaks all the options Formatters have to offer.
i.e. https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=214392ecc6eff73b4789c32568395f72 this should've padded the output with 4 zeros but didn't.

with the new example it does work: https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=3bdfb29f395230c5129c5f56dcfcb2a9

The only thing i'm not quite sure about is what's the right way to do it in a loop (altough non of the docs talk about it people are doing it in the wild and there were a couple of attempts to include in libcore)
i.e. https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=4c4dca3c90ba36779ecd014f3899ab9c
2019-12-06 15:37:10 +09:00
Yuki Okushi
662a225f1d
Rollup merge of #67017 - GuillaumeGomez:long-err-explanations-2, r=Dylan-DPC
cleanup long error explanations

r? @Dylan-DPC
2019-12-06 15:37:08 +09:00
Yuki Okushi
6c0165fa78
Rollup merge of #66979 - reese:E0631-long-error, r=GuillaumeGomez
Add long error for E0631 and update ui tests.

This PR adds a long error for `E0631`, which covers errors where closure argument types are mismatched. It also updates UI tests where this error is applicable.

Part of #61137
2019-12-06 15:37:06 +09:00
Yuki Okushi
3b878aa9ae
Rollup merge of #66974 - cuviper:not-isCI, r=alexcrichton
[CI] fix the `! isCI` check in src/ci/run.sh

Using `if [ ! isCI ] || ...` doesn't run any command, just tests `isCI`
as a string, whereas `if ! isCI || ...` will actually run the `isCI`
command and negate its exit status.
2019-12-06 15:37:04 +09:00
Yuki Okushi
c31773cece
Rollup merge of #66900 - GuillaumeGomez:clean-up-err-codes, r=Dylan-DPC
Clean up error codes

r? @Dylan-DPC
2019-12-06 15:37:03 +09:00
Yuki Okushi
3d2cb55734
Rollup merge of #66764 - estebank:reword-bad-collect, r=alexcrichton
Tweak wording of `collect()` on bad target type

Fix #60440.
2019-12-06 15:37:01 +09:00
Yuki Okushi
617b07e730
Rollup merge of #66649 - Wind-River:master_xyz, r=alexcrichton
VxWorks: fix issues in accessing environment variables
2019-12-06 15:36:56 +09:00
Kamlesh Kumar
f8ecf04f4b accept union inside enum if not followed by identifier 2019-12-06 10:52:28 +05:30
Adam Perry
cc574be985 #[track_caller] suppresses MIR inlining. 2019-12-05 21:12:34 -08:00
Adam Perry
28b2257160 Error message no longer implies #[track_caller] is a requirement for Rust ABI. 2019-12-05 21:11:46 -08:00
Adam Perry
eb679c9c5d Add test for Location::caller in a macro. 2019-12-05 21:08:43 -08:00
Adam Perry
bc6e66eb3a Implement core::panic::Location::caller using #[track_caller]. 2019-12-05 21:08:35 -08:00