Commit Graph

87107 Commits

Author SHA1 Message Date
Aaron Hill
f57247c48c
Ensure that Rusdoc discovers all necessary auto trait bounds
Fixes #50159

This commit makes several improvements to AutoTraitFinder:

* Call infcx.resolve_type_vars_if_possible before processing new
predicates. This ensures that we eliminate inference variables wherever
possible.
* Process all nested obligations we get from a vtable, not just ones
with depth=1.
  * The 'depth=1' check was a hack to work around issues processing
certain predicates. The other changes in this commit allow us to
properly process all predicates that we encounter, so the check is no
longer necessary,
* Ensure that we only display predicates *without* inference variables
to the user, and only attempt to unify predicates that *have* an
inference variable as their type.

Additionally, the internal helper method is_of_param now operates
directly on a type, rather than taking a Substs. This allows us to use
the 'self_ty' method, rather than directly dealing with Substs.
2018-11-28 12:27:11 -05:00
Oliver Scherer
afb8cba5fc Move hir::Lit -> ty::Const conversion into its own file 2018-11-28 17:15:40 +01:00
Georg Semmler
230f5d5676
rustdoc: Fix inlining reexporting bang-macros 2018-11-28 17:11:06 +01:00
Georg Semmler
50b4eefcf5
rustdoc: Fix inlining reexported custom derives 2018-11-28 17:10:21 +01:00
Lyndon Brown
c013de4f9b rustdoc: add margin-bottom spacing to nested lists
set to zero meant that the nested list was squished up against
subsequent list items/paragraphs

this changes the bottom margin to .6em, same as for paragraphs

an example demonstrating the difference with screenshots is given in the
pull request
2018-11-28 16:05:43 +00:00
Nikita Popov
2ec76e76e4 Update LLVM
In particular to pull in a fix for #56265.
2018-11-28 16:13:40 +01:00
Oliver Scherer
40412dc09a Deduplicate literal -> constant lowering 2018-11-28 16:07:30 +01:00
Masaki Hara
8cab350c85 Don't use ReErased in deferred sizedness checking. 2018-11-28 23:59:19 +09:00
Ralf Jung
dd593d3ab8 get_ref -> get_mut 2018-11-28 12:49:11 +01:00
Ralf Jung
965fdb0294 fix build 2018-11-28 10:35:56 +01:00
Ralf Jung
12d90aa949 put the MaybeUninit inside the UnsafeCell 2018-11-28 09:29:56 +01:00
Mark Mansi
5d7717360c fix test 2018-11-27 18:21:10 -06:00
Nikita Popov
d8190afbcb Fix alignment of stores to scalar pair
The alignment for the second element of a scalar pair is not the
same as for the first element. Make sure it is computed correctly
based on the element size.
2018-11-28 00:31:03 +01:00
bors
b68fc18c45 Auto merge of #56293 - matthiaskrgr:clippy, r=oli-obk
submodules: update clippy from 754b4c07 to b2601beb

Changes:
````
Fix NAIVE_BYTECOUNT applicability
Fix dogfood error
Change Applicability of MISTYPED_LITERAL_SUFFIX
Add applicability level to (nearly) every span_lint_and_sugg function
Update stderr file
Fix bugs and improve documentation
Add Applicability::Unspecified to span_lint_and_sugg functions
Introduce snippet_with_applicability and hir_with_applicability functions
readme: tell how to install clippy on travis from git if it is not shipped with a nightly.
constants: add u128 i128 builtin types and fix outdated url
Update lints
Lint only the first statment/expression after alloc
Fix some warnings related to Self
Rename some symbols
Split lint into slow and unsafe vector initalization
Add unsafe set_len initialization
Add slow zero-filled vector initialization lint
Travis: Remove `sudo: false`
Downgrade needless_pass_by_value to allow by default
````
2018-11-27 21:54:39 +00:00
polyfloyd
e63bd91895 Fix a typo in the documentation of std::ffi 2018-11-27 22:33:46 +01:00
Dale Wijnand
097b5db5f6
Move feature enable in ptr::hash doc example 2018-11-27 21:18:20 +00:00
Matthias Krüger
2dd48f834f submodules: update clippy from 754b4c07 to b2601beb
Changes:
````
Fix NAIVE_BYTECOUNT applicability
Fix dogfood error
Change Applicability of MISTYPED_LITERAL_SUFFIX
Add applicability level to (nearly) every span_lint_and_sugg function
Update stderr file
Fix bugs and improve documentation
Add Applicability::Unspecified to span_lint_and_sugg functions
Introduce snippet_with_applicability and hir_with_applicability functions
readme: tell how to install clippy on travis from git if it is not shipped with a nightly.
constants: add u128 i128 builtin types and fix outdated url
Update lints
Lint only the first statment/expression after alloc
Fix some warnings related to Self
Rename some symbols
Split lint into slow and unsafe vector initalization
Add unsafe set_len initialization
Add slow zero-filled vector initialization lint
Travis: Remove `sudo: false`
Downgrade needless_pass_by_value to allow by default
````
2018-11-27 21:21:57 +01:00
Dale Wijnand
9755410f73
Try to fix ptr::hash's doc example 2018-11-27 20:09:21 +00:00
Tom Tromey
999595f640 Re-enable lldb
Commit 7215963e56 disabled lldb due to the LLVM update.  This patch
updates lldb to build against the Rust LLVM, and re-enables it.
2018-11-27 13:07:16 -07:00
Mark Mansi
aeede9eb46 fix test 2018-11-27 13:13:11 -06:00
Mark Mansi
59ae93daed remove uses of feature gate 2018-11-27 13:13:11 -06:00
Mark Mansi
f3b29ca1c2 remove unstable book entry 2018-11-27 13:13:11 -06:00
Mark Mansi
e97edad935 update tests 2018-11-27 13:13:11 -06:00
Mark Mansi
32aafb2203 remove some unused vars 2018-11-27 13:08:41 -06:00
Mark Mansi
a542e48871 remove feature gate 2018-11-27 13:08:41 -06:00
Mark Mansi
c75ed34732 move feature gate to accepted 2018-11-27 13:08:41 -06:00
bors
400c2bc5ed Auto merge of #56264 - petrochenkov:typonly, r=nikomatsakis
resolve: Extern prelude is for type namespace only

Fixes https://github.com/rust-lang/rust/issues/56263 (stable-to-beta regression)
2018-11-27 19:04:44 +00:00
Marius Nuennerich
73b656bbb3
Fix small typo in comment 2018-11-27 18:57:55 +01:00
Dale Wijnand
4a7ffe2646
Fix issue number 2018-11-27 16:46:59 +00:00
Dale Wijnand
afb4fbd951
Add an assert_eq in ptr::hash's doc example 2018-11-27 16:46:24 +00:00
Dale Wijnand
81251491dd
Pick a better variable name for ptr::hash 2018-11-27 16:33:01 +00:00
Dale Wijnand
7b429b0440
Fix stability attribute for ptr::hash 2018-11-27 16:32:41 +00:00
bors
aeff91d977 Auto merge of #56251 - scalexm:root-universe, r=nikomatsakis
Put all existential ty vars in the `ROOT` universe

r? @nikomatsakis
2018-11-27 15:54:21 +00:00
Ralf Jung
a4f12344c6 add comments explaining our uses of get_ref/get_mut for MaybeUninit 2018-11-27 16:12:08 +01:00
Ralf Jung
2f2f37983d add missing feature 2018-11-27 16:11:45 +01:00
Masaki Hara
9d35e57907 Normalize type before deferred sizedness checking. 2018-11-27 23:38:08 +09:00
Ralf Jung
a8f9302047 avoid features_untracked 2018-11-27 14:05:13 +01:00
Ralf Jung
a810275150 fix build 2018-11-27 13:48:40 +01:00
bors
10e2c729ea Auto merge of #55402 - estebank:macro-eof-2, r=nikomatsakis
Point at end of macro arm when encountering EOF

Fix #52866.
2018-11-27 12:31:45 +00:00
Vadim Petrochenkov
cd2e98dbd3 resolve: Extern prelude is for type namespace only 2018-11-27 14:35:36 +03:00
bors
691a7f8e2b Auto merge of #56094 - RalfJung:memory-data-revived, r=oli-obk
miri: Memory data revived, Hooks for stack frame push/pop

r? @oli-obk
2018-11-27 09:30:15 +00:00
Guillaume Gomez
6739c0e935 Add missing doc link 2018-11-27 10:02:47 +01:00
Ralf Jung
f2af41ab8c use MaybeUninit instead of mem::uninitialized for Windows Mutex 2018-11-27 09:32:00 +01:00
ljedrz
d4a6e739f3 Use sort_by_cached_key when key the function is not trivial/free 2018-11-27 09:24:13 +01:00
bors
45205f2ac1 Auto merge of #56262 - petrochenkov:nabsedihyg, r=petrochenkov
[master] resolve: Implement edition hygiene for imports and absolute paths

Forward-port of https://github.com/rust-lang/rust/pull/56053 to master.

r? @ghost
2018-11-27 01:02:37 +00:00
Dan Robertson
e9e084f5fa
test: Add basic test for VaList 2018-11-26 22:56:20 +00:00
Dan Robertson
08140878fe
libcore: Add va_list lang item and intrinsics
- Add the llvm intrinsics used to manipulate a va_list.
 - Add the va_list lang item in order to allow implementing
   VaList in libcore.
2018-11-26 22:56:19 +00:00
bors
75d937c49b Auto merge of #54668 - RalfJung:use-maybe-uninit, r=SimonSapin
Use MaybeUninit in libcore

All code by @japaric. This re-submits the second half of https://github.com/rust-lang/rust/pull/53508 (the first half is at https://github.com/rust-lang/rust/pull/54667). This is likely the one containing the perf regression.
2018-11-26 22:20:20 +00:00
Esteban Küber
6f028fe8e0 Specify suggestion applicability 2018-11-26 13:58:46 -08:00
Vadim Petrochenkov
6f13708299 resolve: Suggest crate:: for resolving ambiguities when appropriate
More precise spans for ambiguities from macros
2018-11-27 00:34:25 +03:00